{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "name": "COVID_19_2.ipynb",
      "provenance": [],
      "collapsed_sections": []
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    }
  },
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "BYX8-7H25LE8",
        "colab_type": "text"
      },
      "source": [
        "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/catboost/tutorials/blob/master/example_usages/COVID_19.ipynb)\n",
        "\n",
        "This is an example on how to predict COVID-19 spread. The goal is to predict Confirmed cases and Fatalities for future dates based on data for previous dates. \n",
        "\n",
        "## Table of contents\n",
        "\n",
        "* [General description](#general_description)\n",
        "* [Install and import necessary packages ](#install_and_import)\n",
        "* [Get main data from Kaggle](#get_main_data)\n",
        "* [Feature engineering](#features)\n",
        "  * [Time delay embedding features](#time_delay_embedding_features)\n",
        "  * [Day feature](#day_feature)\n",
        "  * [WeekDay feature](#week_day_feature)\n",
        "  * [Days since Xth Confirmed case and Xth Fatality features](#days_since_features)\n",
        "  * ['Distance to Origin' feature](#distance_to_origin_feature)\n",
        "  * [Functions for merging external data](#functions_for_merging)\n",
        "  * [Country Area](#country_area_feature)\n",
        "  * [Country population features](#country_population_features)\n",
        "  * [Country Population density feature](#country_population_density_feature)\n",
        "  * [Country Smoking rate feature](#country_smoking_rate_feature)\n",
        "  * [Country hospital beds per 1000 people](#country_hospital_beds_feature)\n",
        "  * [Country Health Expenditure](#country_health_expenditure_feature)\n",
        "* [Prepare data for training](#prepare_for_training)\n",
        "* [Models training](#models_training)\n",
        "* [Feature importance in the models](#feature_importance)\n",
        "* [Create predictions for eval and test data](#predictions)\n",
        "* [Plots with predictions](#plots_with_predictions)\n",
        "\n",
        "\n",
        "\n",
        "\n",
        "\n",
        "\n",
        "\n",
        "\n"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "Kw0fIYKmolzm",
        "colab_type": "text"
      },
      "source": [
        "## General description <a name=\"general_description\"></a>\n",
        "\n",
        "The main data to train on is taken from https://www.kaggle.com/c/covid19-global-forecasting-week-1/data.\n",
        "Regions are specified using two data fields: ``Province/State`` and ``Country/Region``.\n",
        "This data is also enriched with region coordinates in ``Lat`` and ``Long`` fields.\n",
        "Train data contains cumulative numbers of Confirmed cases and Fatalities for the different regions for the number of consecutive dates (contained in ``Date`` field) from 2020-01-22 to 2020-03-24. Test data is for dates from 2020-03-12 to 2020-04-23. Test data does not have Confirmed cases and Fatalities.\n",
        "\n",
        "We will also add additional data for features from other sources:\n",
        "* Country Land area from [World bank data](https://data.worldbank.org/indicator/AG.LND.TOTL.K2)\n",
        "* Country Smoking rate from [World bank data](https://data.worldbank.org/indicator/SH.PRV.SMOK)\n",
        "* Country Population Age and Sex distribution from [UN World Population Prospects](https://population.un.org/wpp/Download/Standard/CSV/)\n",
        "* Country Hospital beds per 1000 people from [World Bank data](https://data.worldbank.org/indicator/sh.med.beds.zs)\n",
        "* Country Health expenditure per Capita, PPP (current international $) from [World Bank data](https://data.worldbank.org/indicator/SH.XPD.CHEX.PP.CD) \n",
        "\n",
        "We will construct models that predict new cases and new fatalities (in the logarithmic scale) for the next day based on time delay embedding features for the last 30 days plus additional features from sources described above. \n",
        "\n",
        "For forecasting further into the future (more than a single day) we will use an incremental (by days) approach: we will use predicted values of new cases and new fatalities for days with already calculated predictions as input data for time delay embedding features for the next prediction day and then use the same procedure for the new next prediction day and so on."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "CcL1lG4kjNhC",
        "colab_type": "text"
      },
      "source": [
        "## Install and import necessary packages <a name=\"install_and_import\"></a>\n"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "IrFU3KqUjYf-",
        "colab_type": "code",
        "outputId": "9f7026c0-47f5-4cbe-fbb3-2a38c1d3e8f8",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 678
        }
      },
      "source": [
        "!pip install kaggle -U\n",
        "!pip install pandas -U\n",
        "!pip install catboost -U\n",
        "\n",
        "import os\n",
        "import pathlib\n",
        "import re\n",
        "\n",
        "import numpy as np\n",
        "import pandas as pd\n",
        "import sklearn.preprocessing\n",
        "\n",
        "import geopy.distance\n",
        "\n",
        "import catboost as cb\n"
      ],
      "execution_count": 1,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "Requirement already up-to-date: kaggle in /usr/local/lib/python3.6/dist-packages (1.5.6)\n",
            "Requirement already satisfied, skipping upgrade: certifi in /usr/local/lib/python3.6/dist-packages (from kaggle) (2020.4.5.1)\n",
            "Requirement already satisfied, skipping upgrade: six>=1.10 in /usr/local/lib/python3.6/dist-packages (from kaggle) (1.12.0)\n",
            "Requirement already satisfied, skipping upgrade: urllib3<1.25,>=1.21.1 in /usr/local/lib/python3.6/dist-packages (from kaggle) (1.24.3)\n",
            "Requirement already satisfied, skipping upgrade: python-dateutil in /usr/local/lib/python3.6/dist-packages (from kaggle) (2.8.1)\n",
            "Requirement already satisfied, skipping upgrade: requests in /usr/local/lib/python3.6/dist-packages (from kaggle) (2.21.0)\n",
            "Requirement already satisfied, skipping upgrade: tqdm in /usr/local/lib/python3.6/dist-packages (from kaggle) (4.38.0)\n",
            "Requirement already satisfied, skipping upgrade: python-slugify in /usr/local/lib/python3.6/dist-packages (from kaggle) (4.0.0)\n",
            "Requirement already satisfied, skipping upgrade: chardet<3.1.0,>=3.0.2 in /usr/local/lib/python3.6/dist-packages (from requests->kaggle) (3.0.4)\n",
            "Requirement already satisfied, skipping upgrade: idna<2.9,>=2.5 in /usr/local/lib/python3.6/dist-packages (from requests->kaggle) (2.8)\n",
            "Requirement already satisfied, skipping upgrade: text-unidecode>=1.3 in /usr/local/lib/python3.6/dist-packages (from python-slugify->kaggle) (1.3)\n",
            "Requirement already up-to-date: pandas in /usr/local/lib/python3.6/dist-packages (1.0.3)\n",
            "Requirement already satisfied, skipping upgrade: python-dateutil>=2.6.1 in /usr/local/lib/python3.6/dist-packages (from pandas) (2.8.1)\n",
            "Requirement already satisfied, skipping upgrade: numpy>=1.13.3 in /usr/local/lib/python3.6/dist-packages (from pandas) (1.18.2)\n",
            "Requirement already satisfied, skipping upgrade: pytz>=2017.2 in /usr/local/lib/python3.6/dist-packages (from pandas) (2018.9)\n",
            "Requirement already satisfied, skipping upgrade: six>=1.5 in /usr/local/lib/python3.6/dist-packages (from python-dateutil>=2.6.1->pandas) (1.12.0)\n",
            "Collecting catboost\n",
            "\u001b[?25l  Downloading https://files.pythonhosted.org/packages/94/ec/12b9a42b2ea7dfe5b602f235692ab2b61ee1334ff34334a15902272869e8/catboost-0.22-cp36-none-manylinux1_x86_64.whl (64.4MB)\n",
            "\u001b[K     |████████████████████████████████| 64.4MB 61kB/s \n",
            "\u001b[?25hRequirement already satisfied, skipping upgrade: matplotlib in /usr/local/lib/python3.6/dist-packages (from catboost) (3.2.1)\n",
            "Requirement already satisfied, skipping upgrade: plotly in /usr/local/lib/python3.6/dist-packages (from catboost) (4.4.1)\n",
            "Requirement already satisfied, skipping upgrade: numpy>=1.16.0 in /usr/local/lib/python3.6/dist-packages (from catboost) (1.18.2)\n",
            "Requirement already satisfied, skipping upgrade: graphviz in /usr/local/lib/python3.6/dist-packages (from catboost) (0.10.1)\n",
            "Requirement already satisfied, skipping upgrade: scipy in /usr/local/lib/python3.6/dist-packages (from catboost) (1.4.1)\n",
            "Requirement already satisfied, skipping upgrade: pandas>=0.24.0 in /usr/local/lib/python3.6/dist-packages (from catboost) (1.0.3)\n",
            "Requirement already satisfied, skipping upgrade: six in /usr/local/lib/python3.6/dist-packages (from catboost) (1.12.0)\n",
            "Requirement already satisfied, skipping upgrade: python-dateutil>=2.1 in /usr/local/lib/python3.6/dist-packages (from matplotlib->catboost) (2.8.1)\n",
            "Requirement already satisfied, skipping upgrade: kiwisolver>=1.0.1 in /usr/local/lib/python3.6/dist-packages (from matplotlib->catboost) (1.2.0)\n",
            "Requirement already satisfied, skipping upgrade: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /usr/local/lib/python3.6/dist-packages (from matplotlib->catboost) (2.4.7)\n",
            "Requirement already satisfied, skipping upgrade: cycler>=0.10 in /usr/local/lib/python3.6/dist-packages (from matplotlib->catboost) (0.10.0)\n",
            "Requirement already satisfied, skipping upgrade: retrying>=1.3.3 in /usr/local/lib/python3.6/dist-packages (from plotly->catboost) (1.3.3)\n",
            "Requirement already satisfied, skipping upgrade: pytz>=2017.2 in /usr/local/lib/python3.6/dist-packages (from pandas>=0.24.0->catboost) (2018.9)\n",
            "Installing collected packages: catboost\n",
            "Successfully installed catboost-0.22\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "OiEegEHdiC4Y",
        "colab_type": "text"
      },
      "source": [
        "## Get main data from Kaggle <a name=\"get_main_data\"></a>\n",
        "\n",
        "As we download from Kaggle we need to provide Kaggle authetification cridentials. We will use the method suggested [here](https://gist.github.com/jayspeidell/d10b84b8d3da52df723beacc5b15cb27#gistcomment-2814834). Replace KAGGLE_USERNAME and KAGGLE_KEY with your own."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "sv_RlEMM5Nfk",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "os.environ['KAGGLE_USERNAME'] = \"XXX\"\n",
        "os.environ['KAGGLE_KEY'] = \"YYY\""
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "86cDHJXTjBvc",
        "colab_type": "text"
      },
      "source": [
        "Let's download the data now."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "7X0mwipNgJ7t",
        "colab_type": "code",
        "outputId": "367366c9-e71c-4721-d656-41bb231813e1",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 206
        }
      },
      "source": [
        "kaggle_data_name = 'covid19-global-forecasting-week-1'\n",
        "data_folder = os.path.join(pathlib.Path.home(), 'datasets', kaggle_data_name)\n",
        "\n",
        "!mkdir -p ${data_folder}\n",
        "!kaggle competitions download -c {kaggle_data_name} --path {data_folder}"
      ],
      "execution_count": 3,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "Warning: Looks like you're using an outdated API Version, please consider updating (server 1.5.6 / client 1.5.4)\n",
            "Downloading submission.csv to /root/datasets/covid19-global-forecasting-week-1\n",
            "\r  0% 0.00/108k [00:00<?, ?B/s]\n",
            "100% 108k/108k [00:00<00:00, 23.0MB/s]\n",
            "Downloading train.csv to /root/datasets/covid19-global-forecasting-week-1\n",
            "  0% 0.00/947k [00:00<?, ?B/s]\n",
            "100% 947k/947k [00:00<00:00, 62.2MB/s]\n",
            "Downloading test.csv to /root/datasets/covid19-global-forecasting-week-1\n",
            "  0% 0.00/540k [00:00<?, ?B/s]\n",
            "100% 540k/540k [00:00<00:00, 165MB/s]\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "u3q53R_4lHoj",
        "colab_type": "text"
      },
      "source": [
        "Let's check that data is ok."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "_GFdJCZljTP6",
        "colab_type": "code",
        "outputId": "4f81b632-7c37-42d0-8305-3de663f38c42",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 92
        }
      },
      "source": [
        "!ls -l {data_folder}"
      ],
      "execution_count": 4,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "total 1600\n",
            "-rw-r--r-- 1 root root 111051 Apr 19 14:10 submission.csv\n",
            "-rw-r--r-- 1 root root 552851 Apr 19 14:10 test.csv\n",
            "-rw-r--r-- 1 root root 969831 Apr 19 14:10 train.csv\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "xaQwiin_lh0o",
        "colab_type": "text"
      },
      "source": [
        "Let's load data to pandas.DataFrame."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "3EAspteQlnyI",
        "colab_type": "code",
        "outputId": "3c754fd7-bdee-4088-f10a-1bd703506d16",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 206
        }
      },
      "source": [
        "original_train_df = pd.read_csv(os.path.join(data_folder,'train.csv'), parse_dates=['Date'])\n",
        "original_train_df.head()"
      ],
      "execution_count": 5,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Id</th>\n",
              "      <th>Province/State</th>\n",
              "      <th>Country/Region</th>\n",
              "      <th>Lat</th>\n",
              "      <th>Long</th>\n",
              "      <th>Date</th>\n",
              "      <th>ConfirmedCases</th>\n",
              "      <th>Fatalities</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>1</td>\n",
              "      <td>NaN</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0</td>\n",
              "      <td>65.0</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>2</td>\n",
              "      <td>NaN</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0</td>\n",
              "      <td>65.0</td>\n",
              "      <td>2020-01-23</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>3</td>\n",
              "      <td>NaN</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0</td>\n",
              "      <td>65.0</td>\n",
              "      <td>2020-01-24</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>4</td>\n",
              "      <td>NaN</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0</td>\n",
              "      <td>65.0</td>\n",
              "      <td>2020-01-25</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>5</td>\n",
              "      <td>NaN</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0</td>\n",
              "      <td>65.0</td>\n",
              "      <td>2020-01-26</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "   Id Province/State Country/Region  ...       Date  ConfirmedCases Fatalities\n",
              "0   1            NaN    Afghanistan  ... 2020-01-22             0.0        0.0\n",
              "1   2            NaN    Afghanistan  ... 2020-01-23             0.0        0.0\n",
              "2   3            NaN    Afghanistan  ... 2020-01-24             0.0        0.0\n",
              "3   4            NaN    Afghanistan  ... 2020-01-25             0.0        0.0\n",
              "4   5            NaN    Afghanistan  ... 2020-01-26             0.0        0.0\n",
              "\n",
              "[5 rows x 8 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 5
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "pISO62b-g4jt",
        "colab_type": "code",
        "outputId": "4aa1ee86-143d-4723-d86f-f26a7fe47765",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 206
        }
      },
      "source": [
        "original_test_df = pd.read_csv(os.path.join(data_folder,'test.csv'), parse_dates=['Date'])\n",
        "original_test_df.head()"
      ],
      "execution_count": 6,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>ForecastId</th>\n",
              "      <th>Province/State</th>\n",
              "      <th>Country/Region</th>\n",
              "      <th>Lat</th>\n",
              "      <th>Long</th>\n",
              "      <th>Date</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>1</td>\n",
              "      <td>NaN</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0</td>\n",
              "      <td>65.0</td>\n",
              "      <td>2020-03-12</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>2</td>\n",
              "      <td>NaN</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0</td>\n",
              "      <td>65.0</td>\n",
              "      <td>2020-03-13</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>3</td>\n",
              "      <td>NaN</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0</td>\n",
              "      <td>65.0</td>\n",
              "      <td>2020-03-14</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>4</td>\n",
              "      <td>NaN</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0</td>\n",
              "      <td>65.0</td>\n",
              "      <td>2020-03-15</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>5</td>\n",
              "      <td>NaN</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0</td>\n",
              "      <td>65.0</td>\n",
              "      <td>2020-03-16</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "   ForecastId Province/State Country/Region   Lat  Long       Date\n",
              "0           1            NaN    Afghanistan  33.0  65.0 2020-03-12\n",
              "1           2            NaN    Afghanistan  33.0  65.0 2020-03-13\n",
              "2           3            NaN    Afghanistan  33.0  65.0 2020-03-14\n",
              "3           4            NaN    Afghanistan  33.0  65.0 2020-03-15\n",
              "4           5            NaN    Afghanistan  33.0  65.0 2020-03-16"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 6
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "mRkKFg29o6y3",
        "colab_type": "text"
      },
      "source": [
        "We will concatenate original train and test dataframes for easier time delay embedding features calculations.\n",
        "Original train and test data intersect by dates. We will use data from original train in the concatenated dataset for such dates."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "4FCBHJhepLw7",
        "colab_type": "code",
        "outputId": "bdc9816f-7174-4bcd-caca-2788fdfc097a",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 74
        }
      },
      "source": [
        "last_original_train_date = original_train_df['Date'].max()\n",
        "print ('last_original_train_date = ', last_original_train_date)\n",
        "\n",
        "print ('original_test_df.shape =', original_test_df.shape)\n",
        "\n",
        "original_test_wo_train_df = original_test_df.drop(\n",
        "    index=original_test_df[original_test_df['Date'] <= last_original_train_date].index\n",
        ")\n",
        "\n",
        "print ('original_test_wo_train_df.shape =', original_test_wo_train_df.shape)\n",
        "\n",
        "# recreate index bacause we will need unique index values later \n",
        "main_df = pd.concat([original_train_df, original_test_wo_train_df], ignore_index=True)"
      ],
      "execution_count": 7,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "last_original_train_date =  2020-03-24 00:00:00\n",
            "original_test_df.shape = (12212, 6)\n",
            "original_test_wo_train_df.shape = (8520, 6)\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "8rrrBKFJuxpr",
        "colab_type": "text"
      },
      "source": [
        "There are special `Provinces` that are in fact data from Cruise ships with `Country` information. Make this ships  ``Countries`` and passengers origin country a ``Province/State`` (for proper hierarchy). "
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "shg5-Qk4sSMS",
        "colab_type": "code",
        "outputId": "4e99bbdc-bc5f-42c0-8144-b4312f6e011d",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 424
        }
      },
      "source": [
        "from_cruise_ships = main_df['Province/State'].isin(['From Diamond Princess', 'Grand Princess'])\n",
        "main_df.loc[from_cruise_ships, ['Province/State','Country/Region']] = main_df.loc[from_cruise_ships, ['Country/Region','Province/State']].values\n",
        "main_df[main_df['Country/Region'].isin(['From Diamond Princess', 'Grand Princess'])]"
      ],
      "execution_count": 8,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Id</th>\n",
              "      <th>Province/State</th>\n",
              "      <th>Country/Region</th>\n",
              "      <th>Lat</th>\n",
              "      <th>Long</th>\n",
              "      <th>Date</th>\n",
              "      <th>ConfirmedCases</th>\n",
              "      <th>Fatalities</th>\n",
              "      <th>ForecastId</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>567</th>\n",
              "      <td>838.0</td>\n",
              "      <td>Australia</td>\n",
              "      <td>From Diamond Princess</td>\n",
              "      <td>35.4437</td>\n",
              "      <td>139.6380</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>568</th>\n",
              "      <td>839.0</td>\n",
              "      <td>Australia</td>\n",
              "      <td>From Diamond Princess</td>\n",
              "      <td>35.4437</td>\n",
              "      <td>139.6380</td>\n",
              "      <td>2020-01-23</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>569</th>\n",
              "      <td>840.0</td>\n",
              "      <td>Australia</td>\n",
              "      <td>From Diamond Princess</td>\n",
              "      <td>35.4437</td>\n",
              "      <td>139.6380</td>\n",
              "      <td>2020-01-24</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>570</th>\n",
              "      <td>841.0</td>\n",
              "      <td>Australia</td>\n",
              "      <td>From Diamond Princess</td>\n",
              "      <td>35.4437</td>\n",
              "      <td>139.6380</td>\n",
              "      <td>2020-01-25</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>571</th>\n",
              "      <td>842.0</td>\n",
              "      <td>Australia</td>\n",
              "      <td>From Diamond Princess</td>\n",
              "      <td>35.4437</td>\n",
              "      <td>139.6380</td>\n",
              "      <td>2020-01-26</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>...</th>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "      <td>...</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>24697</th>\n",
              "      <td>NaN</td>\n",
              "      <td>US</td>\n",
              "      <td>Grand Princess</td>\n",
              "      <td>37.6489</td>\n",
              "      <td>-122.6655</td>\n",
              "      <td>2020-04-19</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>9757.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>24698</th>\n",
              "      <td>NaN</td>\n",
              "      <td>US</td>\n",
              "      <td>Grand Princess</td>\n",
              "      <td>37.6489</td>\n",
              "      <td>-122.6655</td>\n",
              "      <td>2020-04-20</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>9758.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>24699</th>\n",
              "      <td>NaN</td>\n",
              "      <td>US</td>\n",
              "      <td>Grand Princess</td>\n",
              "      <td>37.6489</td>\n",
              "      <td>-122.6655</td>\n",
              "      <td>2020-04-21</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>9759.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>24700</th>\n",
              "      <td>NaN</td>\n",
              "      <td>US</td>\n",
              "      <td>Grand Princess</td>\n",
              "      <td>37.6489</td>\n",
              "      <td>-122.6655</td>\n",
              "      <td>2020-04-22</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>9760.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>24701</th>\n",
              "      <td>NaN</td>\n",
              "      <td>US</td>\n",
              "      <td>Grand Princess</td>\n",
              "      <td>37.6489</td>\n",
              "      <td>-122.6655</td>\n",
              "      <td>2020-04-23</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>9761.0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>279 rows × 9 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "          Id Province/State  ... Fatalities  ForecastId\n",
              "567    838.0      Australia  ...        0.0         NaN\n",
              "568    839.0      Australia  ...        0.0         NaN\n",
              "569    840.0      Australia  ...        0.0         NaN\n",
              "570    841.0      Australia  ...        0.0         NaN\n",
              "571    842.0      Australia  ...        0.0         NaN\n",
              "...      ...            ...  ...        ...         ...\n",
              "24697    NaN             US  ...        NaN      9757.0\n",
              "24698    NaN             US  ...        NaN      9758.0\n",
              "24699    NaN             US  ...        NaN      9759.0\n",
              "24700    NaN             US  ...        NaN      9760.0\n",
              "24701    NaN             US  ...        NaN      9761.0\n",
              "\n",
              "[279 rows x 9 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 8
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "88Fupigl0Nin",
        "colab_type": "text"
      },
      "source": [
        "## Feature engineering <a name=\"features\"></a>\n",
        "\n",
        "### Time delay embedding features <a name=\"time_delay_embedding_features\"></a>\n",
        "\n",
        "ConfirmedCases and Fatalities are transformed to the logarithmic scale ( log(1+x) to be precise ). \n",
        "\n",
        "Add log(1+x) - transformed number of new cases and new fatalities. Logarithmic scale is natural for this task as  the growth of this values is typically exponential.\n",
        "\n",
        "Then add their historic values as (LogNewCases_prev_day_X, LogNewFataities_prev_day_X, X = 1 to 30) features.\n",
        "\n",
        "Some locations contain broken data (Confirmed Cases or Fatalities contain decreasing values), remove them from data."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Eftr6BCP0M6y",
        "colab_type": "code",
        "outputId": "e183edfc-289b-4ae0-a009-32a950a05a87",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 679
        }
      },
      "source": [
        "main_df.sort_values(by='Date', inplace=True)\n",
        "\n",
        "location_columns = ['Country/Region','Province/State']\n",
        "\n",
        "# row selection functions in pandas do not like nans\n",
        "for column in location_columns:\n",
        "    main_df[column].fillna('', inplace=True)\n",
        "\n",
        "\n",
        "days_history_size = 30\n",
        "\n",
        "\n",
        "def is_cumulative(increment_series):\n",
        "    for v in increment_series:\n",
        "        if (not np.isnan(v)) and (v < 0):\n",
        "            return False\n",
        "    return True\n",
        "\n",
        "print ('data size before removing bad data = ', len(main_df))\n",
        "\n",
        "for field in ['LogNewConfirmedCases', 'LogNewFatalities']:\n",
        "    main_df[field] = np.nan\n",
        "\n",
        "    for prev_day in range(1, days_history_size + 1):\n",
        "        main_df[field + '_prev_day_%s' % prev_day] = np.nan\n",
        "\n",
        "\n",
        "for location_name, location_df in main_df.groupby(['Country/Region', 'Province/State']):\n",
        "    for field in ['ConfirmedCases', 'Fatalities']:\n",
        "        new_values = location_df[field].values\n",
        "        new_values[1:] -= new_values[:-1]\n",
        "        if not is_cumulative(new_values):\n",
        "            print ('%s for %s, %s is not valid cumulative series, drop it' % ((field,) + location_name))\n",
        "            main_df.drop(index=location_df.index, inplace=True)\n",
        "            break\n",
        "        log_new_values = np.log1p(new_values)\n",
        "        main_df.loc[location_df.index, 'LogNew' + field] = log_new_values\n",
        "\n",
        "        for prev_day in range(1, days_history_size + 1):\n",
        "            main_df.loc[location_df.index[prev_day:], 'LogNew%s_prev_day_%s' % (field, prev_day)] = (\n",
        "                log_new_values[:-prev_day]\n",
        "            )\n",
        "\n",
        "print ('data size after removing bad data = ', len(main_df))\n",
        "main_df.head()"
      ],
      "execution_count": 9,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "data size before removing bad data =  26412\n",
            "ConfirmedCases for Australia, Northern Territory is not valid cumulative series, drop it\n",
            "ConfirmedCases for Australia, Queensland is not valid cumulative series, drop it\n",
            "ConfirmedCases for Azerbaijan,  is not valid cumulative series, drop it\n",
            "ConfirmedCases for Bahrain,  is not valid cumulative series, drop it\n",
            "Fatalities for Canada, Quebec is not valid cumulative series, drop it\n",
            "ConfirmedCases for China, Guizhou is not valid cumulative series, drop it\n",
            "ConfirmedCases for France, France is not valid cumulative series, drop it\n",
            "ConfirmedCases for France, Saint Barthelemy is not valid cumulative series, drop it\n",
            "ConfirmedCases for Grand Princess, US is not valid cumulative series, drop it\n",
            "ConfirmedCases for Guyana,  is not valid cumulative series, drop it\n",
            "Fatalities for Iceland,  is not valid cumulative series, drop it\n",
            "Fatalities for India,  is not valid cumulative series, drop it\n",
            "ConfirmedCases for Japan,  is not valid cumulative series, drop it\n",
            "Fatalities for Kazakhstan,  is not valid cumulative series, drop it\n",
            "ConfirmedCases for Lebanon,  is not valid cumulative series, drop it\n",
            "ConfirmedCases for Montenegro,  is not valid cumulative series, drop it\n",
            "Fatalities for Philippines,  is not valid cumulative series, drop it\n",
            "Fatalities for Russia,  is not valid cumulative series, drop it\n",
            "Fatalities for Slovakia,  is not valid cumulative series, drop it\n",
            "ConfirmedCases for US, Nevada is not valid cumulative series, drop it\n",
            "ConfirmedCases for US, Utah is not valid cumulative series, drop it\n",
            "ConfirmedCases for US, Washington is not valid cumulative series, drop it\n",
            "data size after removing bad data =  24366\n"
          ],
          "name": "stdout"
        },
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Id</th>\n",
              "      <th>Province/State</th>\n",
              "      <th>Country/Region</th>\n",
              "      <th>Lat</th>\n",
              "      <th>Long</th>\n",
              "      <th>Date</th>\n",
              "      <th>ConfirmedCases</th>\n",
              "      <th>Fatalities</th>\n",
              "      <th>ForecastId</th>\n",
              "      <th>LogNewConfirmedCases</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_1</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_2</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_3</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_4</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_5</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_6</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_7</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_8</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_9</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_10</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_11</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_12</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_13</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_14</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_15</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_16</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_17</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_18</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_19</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_20</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_21</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_22</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_23</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_24</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_25</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_26</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_27</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_28</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_29</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_30</th>\n",
              "      <th>LogNewFatalities</th>\n",
              "      <th>LogNewFatalities_prev_day_1</th>\n",
              "      <th>LogNewFatalities_prev_day_2</th>\n",
              "      <th>LogNewFatalities_prev_day_3</th>\n",
              "      <th>LogNewFatalities_prev_day_4</th>\n",
              "      <th>LogNewFatalities_prev_day_5</th>\n",
              "      <th>LogNewFatalities_prev_day_6</th>\n",
              "      <th>LogNewFatalities_prev_day_7</th>\n",
              "      <th>LogNewFatalities_prev_day_8</th>\n",
              "      <th>LogNewFatalities_prev_day_9</th>\n",
              "      <th>LogNewFatalities_prev_day_10</th>\n",
              "      <th>LogNewFatalities_prev_day_11</th>\n",
              "      <th>LogNewFatalities_prev_day_12</th>\n",
              "      <th>LogNewFatalities_prev_day_13</th>\n",
              "      <th>LogNewFatalities_prev_day_14</th>\n",
              "      <th>LogNewFatalities_prev_day_15</th>\n",
              "      <th>LogNewFatalities_prev_day_16</th>\n",
              "      <th>LogNewFatalities_prev_day_17</th>\n",
              "      <th>LogNewFatalities_prev_day_18</th>\n",
              "      <th>LogNewFatalities_prev_day_19</th>\n",
              "      <th>LogNewFatalities_prev_day_20</th>\n",
              "      <th>LogNewFatalities_prev_day_21</th>\n",
              "      <th>LogNewFatalities_prev_day_22</th>\n",
              "      <th>LogNewFatalities_prev_day_23</th>\n",
              "      <th>LogNewFatalities_prev_day_24</th>\n",
              "      <th>LogNewFatalities_prev_day_25</th>\n",
              "      <th>LogNewFatalities_prev_day_26</th>\n",
              "      <th>LogNewFatalities_prev_day_27</th>\n",
              "      <th>LogNewFatalities_prev_day_28</th>\n",
              "      <th>LogNewFatalities_prev_day_29</th>\n",
              "      <th>LogNewFatalities_prev_day_30</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>1.0</td>\n",
              "      <td></td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0000</td>\n",
              "      <td>65.0000</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>5544</th>\n",
              "      <td>8185.0</td>\n",
              "      <td></td>\n",
              "      <td>Cyprus</td>\n",
              "      <td>35.1264</td>\n",
              "      <td>33.4299</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>14301</th>\n",
              "      <td>21112.0</td>\n",
              "      <td>Guam</td>\n",
              "      <td>US</td>\n",
              "      <td>13.4443</td>\n",
              "      <td>144.7937</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>5607</th>\n",
              "      <td>8278.0</td>\n",
              "      <td></td>\n",
              "      <td>Czechia</td>\n",
              "      <td>49.8175</td>\n",
              "      <td>15.4730</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>5670</th>\n",
              "      <td>8371.0</td>\n",
              "      <td>Denmark</td>\n",
              "      <td>Denmark</td>\n",
              "      <td>56.2639</td>\n",
              "      <td>9.5018</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "            Id  ... LogNewFatalities_prev_day_30\n",
              "0          1.0  ...                          NaN\n",
              "5544    8185.0  ...                          NaN\n",
              "14301  21112.0  ...                          NaN\n",
              "5607    8278.0  ...                          NaN\n",
              "5670    8371.0  ...                          NaN\n",
              "\n",
              "[5 rows x 71 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 9
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "GuxemylRhgSW",
        "colab_type": "text"
      },
      "source": [
        "### Day feature <a name=\"day_feature\"></a>\n",
        "\n",
        "Now, add simple linear Day feature"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "qz8fWHG6QZdu",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "first_date = min(main_df['Date'])\n",
        "    \n",
        "main_df['Day'] = (main_df['Date'] - first_date).dt.days.astype('int32')"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "yEWL2GAn58II",
        "colab_type": "text"
      },
      "source": [
        "### WeekDay feature <a name=\"week_day_feature\"></a>\n",
        "\n",
        "Let's add WeekDay feature"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Z7wNg-zD6BPn",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "main_df['WeekDay'] = main_df['Date'].transform(lambda d: d.weekday())"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "esXELzAHj77X",
        "colab_type": "text"
      },
      "source": [
        "### Days since Xth Confirmed case and Xth Fatality features <a name=\"days_since_features\"></a>\n",
        "\n",
        "Add Days since Xth Confirmed case and Xth Fatality (where X = 1, 10, 100) features"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "WUlHXEpRu0L1",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "thresholds = [1, 10, 100]\n",
        "\n",
        "for threshold in thresholds:\n",
        "    main_df['Days_since_ConfirmedCases=%s' % threshold] = np.nan\n",
        "    main_df['Days_since_Fatalities=%s' % threshold] = np.nan\n",
        "\n",
        "for location_name, location_df in main_df.groupby(['Country/Region', 'Province/State']):\n",
        "    for field in ['ConfirmedCases', 'Fatalities']:\n",
        "        for threshold in thresholds:\n",
        "            first_day = location_df['Day'].loc[location_df[field] >= threshold].min()\n",
        "            if not np.isnan(first_day):\n",
        "                main_df.loc[location_df.index, 'Days_since_%s=%s' % (field, threshold)] = (\n",
        "                    location_df['Day'].transform(lambda day: -1 if (day < first_day) else (day - first_day))\n",
        "                )"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "znNwtyobuiYv",
        "colab_type": "text"
      },
      "source": [
        "### 'Distance to Origin' feature. <a name=\"distance_to_origin_feature\"></a>\n",
        "\n",
        "Chinese province of Hubei is the original epicentre of the pandemic, so add a feature that represents distance from the region of the sample to the epidemic's origin."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "SpdzCOMzu8GV",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "def get_hubei_coords(df):\n",
        "    for index, row in df.iterrows():\n",
        "        if row['Province/State'] == 'Hubei':\n",
        "            return (row['Lat'], row['Long'])\n",
        "\n",
        "    raise Exception('Hubei not found in data')\n",
        "\n",
        "\n",
        "origin_coords = get_hubei_coords(main_df)\n",
        "\n",
        "main_df['Distance_to_origin'] = main_df.apply(\n",
        "    lambda row: geopy.distance.distance((row['Lat'], row['Long']), origin_coords).km,\n",
        "    axis='columns'\n",
        ")\n"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "gQD43i1oyMZN",
        "colab_type": "text"
      },
      "source": [
        "### Functions for merging external data <a name=\"functions_for_merging\"></a>\n",
        "\n",
        "\n",
        "Let's add some data from other sources.\n",
        "\n",
        "But first, we will need a couple of helper functions with common functionality.\n",
        "\n",
        "World bank data, UN World Population Project data and the main dataset use different names for some of the countries so we will need to remap country names in external datasets for correct merging."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "ZLcmIiTOydcJ",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "def merge_with_column_drop(left_df, right_df, right_df_column='Country'):\n",
        "    df = pd.merge(\n",
        "        left=left_df,\n",
        "        right=right_df,\n",
        "        how='left',\n",
        "        left_on='Country/Region',\n",
        "        right_on=right_df_column\n",
        "    )\n",
        "    df.drop(columns=right_df_column, inplace=True)\n",
        "    \n",
        "    return df\n",
        "\n",
        "def remap_country_name_from_world_bank_to_main_df_name(country):\n",
        "    return {\n",
        "        'Bahamas, The': 'The Bahamas',\n",
        "        'Brunei Darussalam': 'Brunei',\n",
        "        'Congo, Rep.': 'Congo (Brazzaville)',\n",
        "        'Congo, Dem. Rep.': 'Congo (Kinshasa)',\n",
        "        'Czech Republic': 'Czechia',\n",
        "        'Egypt, Arab Rep.': 'Egypt',\n",
        "        'Iran, Islamic Rep.': 'Iran',\n",
        "        'Korea, Rep.': 'Korea, South',\n",
        "        'Kyrgyz Republic': 'Kyrgyzstan',\n",
        "        'Russian Federation': 'Russia',\n",
        "        'Slovak Republic': 'Slovakia',\n",
        "        'St. Lucia': 'Saint Lucia',\n",
        "        'St. Vincent and the Grenadines': 'Saint Vincent and the Grenadines',\n",
        "        'United States': 'US',\n",
        "        'Venezuela, RB': 'Venezuela',\n",
        "    }.get(country, country)\n",
        "\n",
        "def remap_country_name_from_un_wpp_to_main_df_name(country):\n",
        "    return {\n",
        "        'Bahamas': 'The Bahamas',\n",
        "        'Bolivia (Plurinational State of)': 'Bolivia',\n",
        "        'Brunei Darussalam': 'Brunei',\n",
        "        'China, Taiwan Province of China': 'Taiwan*',\n",
        "        'Congo' : 'Congo (Brazzaville)',\n",
        "        'Côte d\\'Ivoire': 'Cote d\\'Ivoire',\n",
        "        'Democratic Republic of the Congo': 'Congo (Kinshasa)',\n",
        "        'Gambia': 'The Gambia',\n",
        "        'Iran (Islamic Republic of)': 'Iran',\n",
        "        'Republic of Korea': 'Korea, South',\n",
        "        'Republic of Moldova': 'Moldova',\n",
        "        'Réunion': 'Reunion',\n",
        "        'Russian Federation': 'Russia',\n",
        "        'United Republic of Tanzania': 'Tanzania',\n",
        "        'United States of America': 'US',\n",
        "        'Venezuela (Bolivarian Republic of)': 'Venezuela',\n",
        "        'Viet Nam': 'Vietnam'\n",
        "    }.get(country, country)\n",
        "\n",
        "# for read_csv\n",
        "world_bank_converters={'Country Name': remap_country_name_from_world_bank_to_main_df_name}\n",
        "un_wpp_converters={'Location': remap_country_name_from_un_wpp_to_main_df_name}"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "RZrD5vlexX7_",
        "colab_type": "text"
      },
      "source": [
        "### Country Area <a name=\"country_area_feature\"></a>\n",
        "\n",
        "Let's add Country Area feature. We will use data from World Bank for that.\n",
        "\n",
        "\n"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Yi6xbUz4qMP2",
        "colab_type": "code",
        "outputId": "cfff6fd6-95da-4b9e-f47e-ac75eed0a948",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 394
        }
      },
      "source": [
        "!mkdir -p area\n",
        "os.chdir('area')\n",
        "!wget -nc http://api.worldbank.org/v2/en/indicator/AG.LND.TOTL.K2?downloadformat=csv -O area.zip\n",
        "!unzip -n area.zip  \n",
        "!ls -l ."
      ],
      "execution_count": 15,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "--2020-04-19 14:10:51--  http://api.worldbank.org/v2/en/indicator/AG.LND.TOTL.K2?downloadformat=csv\n",
            "Resolving api.worldbank.org (api.worldbank.org)... 34.237.118.134\n",
            "Connecting to api.worldbank.org (api.worldbank.org)|34.237.118.134|:80... connected.\n",
            "HTTP request sent, awaiting response... 200 OK\n",
            "Length: 19817 (19K) [application/zip]\n",
            "Saving to: ‘area.zip’\n",
            "\n",
            "\rarea.zip              0%[                    ]       0  --.-KB/s               \rarea.zip            100%[===================>]  19.35K  --.-KB/s    in 0.01s   \n",
            "\n",
            "2020-04-19 14:10:51 (1.48 MB/s) - ‘area.zip’ saved [19817/19817]\n",
            "\n",
            "Archive:  area.zip\n",
            "  inflating: Metadata_Indicator_API_AG.LND.TOTL.K2_DS2_en_csv_v2_937279.csv  \n",
            "  inflating: API_AG.LND.TOTL.K2_DS2_en_csv_v2_937279.csv  \n",
            "  inflating: Metadata_Country_API_AG.LND.TOTL.K2_DS2_en_csv_v2_937279.csv  \n",
            "total 224\n",
            "-rw-r--r-- 1 root root 169544 Apr  9 18:44 API_AG.LND.TOTL.K2_DS2_en_csv_v2_937279.csv\n",
            "-rw-r--r-- 1 root root  19817 Apr 19 14:10 area.zip\n",
            "-rw-r--r-- 1 root root  30906 Apr  9 18:44 Metadata_Country_API_AG.LND.TOTL.K2_DS2_en_csv_v2_937279.csv\n",
            "-rw-r--r-- 1 root root    417 Apr  9 18:44 Metadata_Indicator_API_AG.LND.TOTL.K2_DS2_en_csv_v2_937279.csv\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "sT7s0ACrtkqP",
        "colab_type": "code",
        "outputId": "786654b1-84d2-44ea-e0b2-594a6870bebe",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 226
        }
      },
      "source": [
        "!head API_AG.LND.TOTL.K2_DS2_en_csv_v2_937279.csv\n"
      ],
      "execution_count": 16,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "﻿\"Data Source\",\"World Development Indicators\",\r\n",
            "\r\n",
            "\"Last Updated Date\",\"2020-04-09\",\r\n",
            "\r\n",
            "\"Country Name\",\"Country Code\",\"Indicator Name\",\"Indicator Code\",\"1960\",\"1961\",\"1962\",\"1963\",\"1964\",\"1965\",\"1966\",\"1967\",\"1968\",\"1969\",\"1970\",\"1971\",\"1972\",\"1973\",\"1974\",\"1975\",\"1976\",\"1977\",\"1978\",\"1979\",\"1980\",\"1981\",\"1982\",\"1983\",\"1984\",\"1985\",\"1986\",\"1987\",\"1988\",\"1989\",\"1990\",\"1991\",\"1992\",\"1993\",\"1994\",\"1995\",\"1996\",\"1997\",\"1998\",\"1999\",\"2000\",\"2001\",\"2002\",\"2003\",\"2004\",\"2005\",\"2006\",\"2007\",\"2008\",\"2009\",\"2010\",\"2011\",\"2012\",\"2013\",\"2014\",\"2015\",\"2016\",\"2017\",\"2018\",\"2019\",\r\n",
            "\"Aruba\",\"ABW\",\"Land area (sq. km)\",\"AG.LND.TOTL.K2\",\"\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"180\",\"\",\r\n",
            "\"Afghanistan\",\"AFG\",\"Land area (sq. km)\",\"AG.LND.TOTL.K2\",\"\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"652860\",\"\",\r\n",
            "\"Angola\",\"AGO\",\"Land area (sq. km)\",\"AG.LND.TOTL.K2\",\"\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"1246700\",\"\",\r\n",
            "\"Albania\",\"ALB\",\"Land area (sq. km)\",\"AG.LND.TOTL.K2\",\"\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"27400\",\"\",\r\n",
            "\"Andorra\",\"AND\",\"Land area (sq. km)\",\"AG.LND.TOTL.K2\",\"\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"470\",\"\",\r\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "-bGeu_fzr5Wp",
        "colab_type": "code",
        "outputId": "9501aff1-64ef-4666-cec2-70949c990311",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 330
        }
      },
      "source": [
        "area_df = pd.read_csv('./API_AG.LND.TOTL.K2_DS2_en_csv_v2_937279.csv', skiprows=4, converters=world_bank_converters)\n",
        "os.chdir('..')\n",
        "area_df.head()"
      ],
      "execution_count": 17,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Country Name</th>\n",
              "      <th>Country Code</th>\n",
              "      <th>Indicator Name</th>\n",
              "      <th>Indicator Code</th>\n",
              "      <th>1960</th>\n",
              "      <th>1961</th>\n",
              "      <th>1962</th>\n",
              "      <th>1963</th>\n",
              "      <th>1964</th>\n",
              "      <th>1965</th>\n",
              "      <th>1966</th>\n",
              "      <th>1967</th>\n",
              "      <th>1968</th>\n",
              "      <th>1969</th>\n",
              "      <th>1970</th>\n",
              "      <th>1971</th>\n",
              "      <th>1972</th>\n",
              "      <th>1973</th>\n",
              "      <th>1974</th>\n",
              "      <th>1975</th>\n",
              "      <th>1976</th>\n",
              "      <th>1977</th>\n",
              "      <th>1978</th>\n",
              "      <th>1979</th>\n",
              "      <th>1980</th>\n",
              "      <th>1981</th>\n",
              "      <th>1982</th>\n",
              "      <th>1983</th>\n",
              "      <th>1984</th>\n",
              "      <th>1985</th>\n",
              "      <th>1986</th>\n",
              "      <th>1987</th>\n",
              "      <th>1988</th>\n",
              "      <th>1989</th>\n",
              "      <th>1990</th>\n",
              "      <th>1991</th>\n",
              "      <th>1992</th>\n",
              "      <th>1993</th>\n",
              "      <th>1994</th>\n",
              "      <th>1995</th>\n",
              "      <th>1996</th>\n",
              "      <th>1997</th>\n",
              "      <th>1998</th>\n",
              "      <th>1999</th>\n",
              "      <th>2000</th>\n",
              "      <th>2001</th>\n",
              "      <th>2002</th>\n",
              "      <th>2003</th>\n",
              "      <th>2004</th>\n",
              "      <th>2005</th>\n",
              "      <th>2006</th>\n",
              "      <th>2007</th>\n",
              "      <th>2008</th>\n",
              "      <th>2009</th>\n",
              "      <th>2010</th>\n",
              "      <th>2011</th>\n",
              "      <th>2012</th>\n",
              "      <th>2013</th>\n",
              "      <th>2014</th>\n",
              "      <th>2015</th>\n",
              "      <th>2016</th>\n",
              "      <th>2017</th>\n",
              "      <th>2018</th>\n",
              "      <th>2019</th>\n",
              "      <th>Unnamed: 64</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>Aruba</td>\n",
              "      <td>ABW</td>\n",
              "      <td>Land area (sq. km)</td>\n",
              "      <td>AG.LND.TOTL.K2</td>\n",
              "      <td>NaN</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>180.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>AFG</td>\n",
              "      <td>Land area (sq. km)</td>\n",
              "      <td>AG.LND.TOTL.K2</td>\n",
              "      <td>NaN</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>Angola</td>\n",
              "      <td>AGO</td>\n",
              "      <td>Land area (sq. km)</td>\n",
              "      <td>AG.LND.TOTL.K2</td>\n",
              "      <td>NaN</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>1246700.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>Albania</td>\n",
              "      <td>ALB</td>\n",
              "      <td>Land area (sq. km)</td>\n",
              "      <td>AG.LND.TOTL.K2</td>\n",
              "      <td>NaN</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>27400.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>Andorra</td>\n",
              "      <td>AND</td>\n",
              "      <td>Land area (sq. km)</td>\n",
              "      <td>AG.LND.TOTL.K2</td>\n",
              "      <td>NaN</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>470.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "  Country Name Country Code      Indicator Name  ...       2018  2019  Unnamed: 64\n",
              "0        Aruba          ABW  Land area (sq. km)  ...      180.0   NaN          NaN\n",
              "1  Afghanistan          AFG  Land area (sq. km)  ...   652860.0   NaN          NaN\n",
              "2       Angola          AGO  Land area (sq. km)  ...  1246700.0   NaN          NaN\n",
              "3      Albania          ALB  Land area (sq. km)  ...    27400.0   NaN          NaN\n",
              "4      Andorra          AND  Land area (sq. km)  ...      470.0   NaN          NaN\n",
              "\n",
              "[5 rows x 65 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 17
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "A-bpLJUxrt7v",
        "colab_type": "text"
      },
      "source": [
        "We will use the last available data. "
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "7usYQo_RuDCq",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "year_columns = [str(year) for year in range(1960, 2020)]\n",
        "\n",
        "area_df['CountryArea'] = area_df[year_columns].apply(\n",
        "    lambda row: row[row.last_valid_index()] if row.last_valid_index() else np.nan,\n",
        "    axis='columns'    \n",
        ")"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "Z9jzp0rDyybx",
        "colab_type": "text"
      },
      "source": [
        "Drop unneeded columns"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "IUbGQTqJyw1g",
        "colab_type": "code",
        "outputId": "5bb7eee3-d22e-45a6-e265-5ef2be8231fc",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 206
        }
      },
      "source": [
        "area_df = area_df[['Country Name', 'CountryArea']]\n",
        "area_df.head()"
      ],
      "execution_count": 19,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Country Name</th>\n",
              "      <th>CountryArea</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>Aruba</td>\n",
              "      <td>180.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>652860.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>Angola</td>\n",
              "      <td>1246700.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>Albania</td>\n",
              "      <td>27400.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>Andorra</td>\n",
              "      <td>470.0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "  Country Name  CountryArea\n",
              "0        Aruba        180.0\n",
              "1  Afghanistan     652860.0\n",
              "2       Angola    1246700.0\n",
              "3      Albania      27400.0\n",
              "4      Andorra        470.0"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 19
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "TEwyah4Nw77K",
        "colab_type": "text"
      },
      "source": [
        "Now, merge this data with main data by country.\n",
        "\n"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "H1XPT-_OyjV4",
        "colab_type": "code",
        "outputId": "5aec2481-30bd-40e2-fa57-afc32ae3ae42",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 256
        }
      },
      "source": [
        "main_df = merge_with_column_drop(\n",
        "    main_df,\n",
        "    area_df,\n",
        "    right_df_column='Country Name'\n",
        ")\n",
        "main_df.head()"
      ],
      "execution_count": 20,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Id</th>\n",
              "      <th>Province/State</th>\n",
              "      <th>Country/Region</th>\n",
              "      <th>Lat</th>\n",
              "      <th>Long</th>\n",
              "      <th>Date</th>\n",
              "      <th>ConfirmedCases</th>\n",
              "      <th>Fatalities</th>\n",
              "      <th>ForecastId</th>\n",
              "      <th>LogNewConfirmedCases</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_1</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_2</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_3</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_4</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_5</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_6</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_7</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_8</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_9</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_10</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_11</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_12</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_13</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_14</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_15</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_16</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_17</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_18</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_19</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_20</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_21</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_22</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_23</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_24</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_25</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_26</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_27</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_28</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_29</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_30</th>\n",
              "      <th>...</th>\n",
              "      <th>LogNewFatalities_prev_day_1</th>\n",
              "      <th>LogNewFatalities_prev_day_2</th>\n",
              "      <th>LogNewFatalities_prev_day_3</th>\n",
              "      <th>LogNewFatalities_prev_day_4</th>\n",
              "      <th>LogNewFatalities_prev_day_5</th>\n",
              "      <th>LogNewFatalities_prev_day_6</th>\n",
              "      <th>LogNewFatalities_prev_day_7</th>\n",
              "      <th>LogNewFatalities_prev_day_8</th>\n",
              "      <th>LogNewFatalities_prev_day_9</th>\n",
              "      <th>LogNewFatalities_prev_day_10</th>\n",
              "      <th>LogNewFatalities_prev_day_11</th>\n",
              "      <th>LogNewFatalities_prev_day_12</th>\n",
              "      <th>LogNewFatalities_prev_day_13</th>\n",
              "      <th>LogNewFatalities_prev_day_14</th>\n",
              "      <th>LogNewFatalities_prev_day_15</th>\n",
              "      <th>LogNewFatalities_prev_day_16</th>\n",
              "      <th>LogNewFatalities_prev_day_17</th>\n",
              "      <th>LogNewFatalities_prev_day_18</th>\n",
              "      <th>LogNewFatalities_prev_day_19</th>\n",
              "      <th>LogNewFatalities_prev_day_20</th>\n",
              "      <th>LogNewFatalities_prev_day_21</th>\n",
              "      <th>LogNewFatalities_prev_day_22</th>\n",
              "      <th>LogNewFatalities_prev_day_23</th>\n",
              "      <th>LogNewFatalities_prev_day_24</th>\n",
              "      <th>LogNewFatalities_prev_day_25</th>\n",
              "      <th>LogNewFatalities_prev_day_26</th>\n",
              "      <th>LogNewFatalities_prev_day_27</th>\n",
              "      <th>LogNewFatalities_prev_day_28</th>\n",
              "      <th>LogNewFatalities_prev_day_29</th>\n",
              "      <th>LogNewFatalities_prev_day_30</th>\n",
              "      <th>Day</th>\n",
              "      <th>WeekDay</th>\n",
              "      <th>Days_since_ConfirmedCases=1</th>\n",
              "      <th>Days_since_Fatalities=1</th>\n",
              "      <th>Days_since_ConfirmedCases=10</th>\n",
              "      <th>Days_since_Fatalities=10</th>\n",
              "      <th>Days_since_ConfirmedCases=100</th>\n",
              "      <th>Days_since_Fatalities=100</th>\n",
              "      <th>Distance_to_origin</th>\n",
              "      <th>CountryArea</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>1.0</td>\n",
              "      <td></td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0000</td>\n",
              "      <td>65.0000</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>4435.232618</td>\n",
              "      <td>652860.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>8185.0</td>\n",
              "      <td></td>\n",
              "      <td>Cyprus</td>\n",
              "      <td>35.1264</td>\n",
              "      <td>33.4299</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7177.529195</td>\n",
              "      <td>9240.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>21112.0</td>\n",
              "      <td>Guam</td>\n",
              "      <td>US</td>\n",
              "      <td>13.4443</td>\n",
              "      <td>144.7937</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>3851.942689</td>\n",
              "      <td>9147420.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>8278.0</td>\n",
              "      <td></td>\n",
              "      <td>Czechia</td>\n",
              "      <td>49.8175</td>\n",
              "      <td>15.4730</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7897.624038</td>\n",
              "      <td>77220.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>8371.0</td>\n",
              "      <td>Denmark</td>\n",
              "      <td>Denmark</td>\n",
              "      <td>56.2639</td>\n",
              "      <td>9.5018</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7931.069186</td>\n",
              "      <td>41990.0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>5 rows × 81 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "        Id Province/State  ... Distance_to_origin  CountryArea\n",
              "0      1.0                 ...        4435.232618     652860.0\n",
              "1   8185.0                 ...        7177.529195       9240.0\n",
              "2  21112.0           Guam  ...        3851.942689    9147420.0\n",
              "3   8278.0                 ...        7897.624038      77220.0\n",
              "4   8371.0        Denmark  ...        7931.069186      41990.0\n",
              "\n",
              "[5 rows x 81 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 20
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "qLqnNUL5zriP",
        "colab_type": "text"
      },
      "source": [
        "### Country population features <a name=\"country_population_features\"></a>\n",
        "\n",
        "Now, let's add country population data from UN."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "sI11ale0O2EZ",
        "colab_type": "code",
        "outputId": "0de09604-4414-4309-9357-fb3ecc9b902f",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 245
        }
      },
      "source": [
        "!mkdir -p population\n",
        "os.chdir('population')\n",
        "!wget -nc https://population.un.org/wpp/Download/Files/1_Indicators%20\\(Standard\\)/CSV_FILES/WPP2019_PopulationByAgeSex_Medium.csv\n"
      ],
      "execution_count": 21,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "--2020-04-19 14:10:59--  https://population.un.org/wpp/Download/Files/1_Indicators%20(Standard)/CSV_FILES/WPP2019_PopulationByAgeSex_Medium.csv\n",
            "Resolving population.un.org (population.un.org)... 157.150.185.69\n",
            "Connecting to population.un.org (population.un.org)|157.150.185.69|:443... connected.\n",
            "HTTP request sent, awaiting response... 200 OK\n",
            "Length: 118543941 (113M) [application/octet-stream]\n",
            "Saving to: ‘WPP2019_PopulationByAgeSex_Medium.csv’\n",
            "\n",
            "WPP2019_PopulationB 100%[===================>] 113.05M  5.18MB/s    in 22s     \n",
            "\n",
            "2020-04-19 14:11:21 (5.25 MB/s) - ‘WPP2019_PopulationByAgeSex_Medium.csv’ saved [118543941/118543941]\n",
            "\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "MhD5GFYHYdUA",
        "colab_type": "code",
        "outputId": "be1bfea0-63a1-43e9-b7ac-cc0dc152dc4e",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 206
        }
      },
      "source": [
        "!head ./WPP2019_PopulationByAgeSex_Medium.csv"
      ],
      "execution_count": 22,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "LocID,Location,VarID,Variant,Time,MidPeriod,AgeGrp,AgeGrpStart,AgeGrpSpan,PopMale,PopFemale,PopTotal\r\n",
            "4,Afghanistan,2,Medium,1950,1950.5,0-4,0,5,630.044,661.578,1291.622\r\n",
            "4,Afghanistan,2,Medium,1950,1950.5,5-9,5,5,516.206,487.335,1003.541\r\n",
            "4,Afghanistan,2,Medium,1950,1950.5,10-14,10,5,461.378,423.326,884.704\r\n",
            "4,Afghanistan,2,Medium,1950,1950.5,15-19,15,5,414.369,369.363,783.732\r\n",
            "4,Afghanistan,2,Medium,1950,1950.5,20-24,20,5,374.109,318.392,692.501\r\n",
            "4,Afghanistan,2,Medium,1950,1950.5,25-29,25,5,321.311,272.299,593.61\r\n",
            "4,Afghanistan,2,Medium,1950,1950.5,30-34,30,5,276.279,232.168,508.447\r\n",
            "4,Afghanistan,2,Medium,1950,1950.5,35-39,35,5,236.792,197.326,434.118\r\n",
            "4,Afghanistan,2,Medium,1950,1950.5,40-44,40,5,200.616,167.179,367.795\r\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "BS9ypYhoYndR",
        "colab_type": "code",
        "outputId": "bcec3c06-0991-4269-936b-92a464fef85e",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 206
        }
      },
      "source": [
        "population_df = pd.read_csv(\n",
        "    'WPP2019_PopulationByAgeSex_Medium.csv',\n",
        "     usecols=['Location', 'Time', 'AgeGrp', 'PopMale', 'PopFemale', 'PopTotal'],\n",
        "    parse_dates=['Time'],\n",
        "    converters=un_wpp_converters\n",
        ")\n",
        "os.chdir('..')\n",
        "population_df.head()"
      ],
      "execution_count": 23,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Location</th>\n",
              "      <th>Time</th>\n",
              "      <th>AgeGrp</th>\n",
              "      <th>PopMale</th>\n",
              "      <th>PopFemale</th>\n",
              "      <th>PopTotal</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>1950-01-01</td>\n",
              "      <td>0-4</td>\n",
              "      <td>630.044</td>\n",
              "      <td>661.578</td>\n",
              "      <td>1291.622</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>1950-01-01</td>\n",
              "      <td>5-9</td>\n",
              "      <td>516.206</td>\n",
              "      <td>487.335</td>\n",
              "      <td>1003.541</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>1950-01-01</td>\n",
              "      <td>10-14</td>\n",
              "      <td>461.378</td>\n",
              "      <td>423.326</td>\n",
              "      <td>884.704</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>1950-01-01</td>\n",
              "      <td>15-19</td>\n",
              "      <td>414.369</td>\n",
              "      <td>369.363</td>\n",
              "      <td>783.732</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>1950-01-01</td>\n",
              "      <td>20-24</td>\n",
              "      <td>374.109</td>\n",
              "      <td>318.392</td>\n",
              "      <td>692.501</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "      Location       Time AgeGrp  PopMale  PopFemale  PopTotal\n",
              "0  Afghanistan 1950-01-01    0-4  630.044    661.578  1291.622\n",
              "1  Afghanistan 1950-01-01    5-9  516.206    487.335  1003.541\n",
              "2  Afghanistan 1950-01-01  10-14  461.378    423.326   884.704\n",
              "3  Afghanistan 1950-01-01  15-19  414.369    369.363   783.732\n",
              "4  Afghanistan 1950-01-01  20-24  374.109    318.392   692.501"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 23
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "m4ONP3hG2UXd",
        "colab_type": "text"
      },
      "source": [
        "We will use only recent (no earlier than 2014) data\n",
        "\n"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "C5Hq9KMHhBQy",
        "colab_type": "code",
        "outputId": "4cfb40b8-dc76-46a9-ec31-7e0af4d39b45",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 206
        }
      },
      "source": [
        "population_df = population_df.loc[\n",
        "    (population_df['Time'] >= pd.Timestamp(2014,1,1))\n",
        "    & (population_df['Time'] <= pd.Timestamp(2019,1,1))\n",
        "]\n",
        "population_df.head()"
      ],
      "execution_count": 24,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Location</th>\n",
              "      <th>Time</th>\n",
              "      <th>AgeGrp</th>\n",
              "      <th>PopMale</th>\n",
              "      <th>PopFemale</th>\n",
              "      <th>PopTotal</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>1344</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>2014-01-01</td>\n",
              "      <td>0-4</td>\n",
              "      <td>2803.677</td>\n",
              "      <td>2671.583</td>\n",
              "      <td>5475.260</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1345</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>2014-01-01</td>\n",
              "      <td>5-9</td>\n",
              "      <td>2635.812</td>\n",
              "      <td>2520.840</td>\n",
              "      <td>5156.652</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1346</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>2014-01-01</td>\n",
              "      <td>10-14</td>\n",
              "      <td>2356.524</td>\n",
              "      <td>2242.185</td>\n",
              "      <td>4598.709</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1347</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>2014-01-01</td>\n",
              "      <td>15-19</td>\n",
              "      <td>1995.824</td>\n",
              "      <td>1894.380</td>\n",
              "      <td>3890.204</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1348</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>2014-01-01</td>\n",
              "      <td>20-24</td>\n",
              "      <td>1580.881</td>\n",
              "      <td>1458.199</td>\n",
              "      <td>3039.080</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "         Location       Time AgeGrp   PopMale  PopFemale  PopTotal\n",
              "1344  Afghanistan 2014-01-01    0-4  2803.677   2671.583  5475.260\n",
              "1345  Afghanistan 2014-01-01    5-9  2635.812   2520.840  5156.652\n",
              "1346  Afghanistan 2014-01-01  10-14  2356.524   2242.185  4598.709\n",
              "1347  Afghanistan 2014-01-01  15-19  1995.824   1894.380  3890.204\n",
              "1348  Afghanistan 2014-01-01  20-24  1580.881   1458.199  3039.080"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 24
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "pJEpvz333IKB",
        "colab_type": "text"
      },
      "source": [
        "Aggregate data by 20-year groups and also compute cumulative population."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "U-AxHnOehRXS",
        "colab_type": "code",
        "outputId": "b49f8a53-9b6e-4133-eb6f-5af7f90efb1e",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 226
        }
      },
      "source": [
        "aggegated_population_df = pd.DataFrame()\n",
        "\n",
        "for (location, time), group_df in population_df.groupby(['Location', 'Time']):\n",
        "    # by ['Pop_0-20', 'Pop_20-40', 'Pop_40-60', 'Pop_60-80', 'Pop_80+']\n",
        "    pop_by_age_groups = [0] * 5 \n",
        "\n",
        "    pop_male = 0\n",
        "    pop_female = 0\n",
        "\n",
        "    for _, row in group_df.iterrows():\n",
        "        age_grp_start = int( re.split(r'[\\-\\+]', row['AgeGrp'])[0] )\n",
        "        pop_by_age_groups[min(age_grp_start // 20, 4)] += row['PopMale'] + row['PopFemale']\n",
        "        pop_male += row['PopMale']\n",
        "        pop_female += row['PopFemale']\n",
        "\n",
        "    \"\"\n",
        "    aggegated_population_df = aggegated_population_df.append(\n",
        "        {\n",
        "            'Location': location,\n",
        "            'Time': time,\n",
        "            'CountryPop_0-20': pop_by_age_groups[0],\n",
        "            'CountryPop_20-40': pop_by_age_groups[1],\n",
        "            'CountryPop_40-60': pop_by_age_groups[2],\n",
        "            'CountryPop_60-80': pop_by_age_groups[3],\n",
        "            'CountryPop_80+': pop_by_age_groups[4],\n",
        "            'CountryPopMale': pop_male,\n",
        "            'CountryPopFemale': pop_female,\n",
        "            'CountryPopTotal': pop_male + pop_female\n",
        "        },\n",
        "        ignore_index=True        \n",
        "    )\n",
        "\n",
        "aggegated_population_df.head()"
      ],
      "execution_count": 25,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>CountryPopFemale</th>\n",
              "      <th>CountryPopMale</th>\n",
              "      <th>CountryPopTotal</th>\n",
              "      <th>CountryPop_0-20</th>\n",
              "      <th>CountryPop_20-40</th>\n",
              "      <th>CountryPop_40-60</th>\n",
              "      <th>CountryPop_60-80</th>\n",
              "      <th>CountryPop_80+</th>\n",
              "      <th>Location</th>\n",
              "      <th>Time</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>16232.001</td>\n",
              "      <td>17138.803</td>\n",
              "      <td>33370.804</td>\n",
              "      <td>19120.825</td>\n",
              "      <td>9120.269</td>\n",
              "      <td>3811.938</td>\n",
              "      <td>1232.313</td>\n",
              "      <td>85.459</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>2014-01-01</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>16727.437</td>\n",
              "      <td>17686.166</td>\n",
              "      <td>34413.603</td>\n",
              "      <td>19506.367</td>\n",
              "      <td>9568.838</td>\n",
              "      <td>3970.149</td>\n",
              "      <td>1282.697</td>\n",
              "      <td>85.552</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>2015-01-01</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>17196.034</td>\n",
              "      <td>18186.994</td>\n",
              "      <td>35383.028</td>\n",
              "      <td>19860.543</td>\n",
              "      <td>9972.188</td>\n",
              "      <td>4127.626</td>\n",
              "      <td>1330.040</td>\n",
              "      <td>92.631</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>2016-01-01</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>17644.126</td>\n",
              "      <td>18651.985</td>\n",
              "      <td>36296.111</td>\n",
              "      <td>20165.546</td>\n",
              "      <td>10368.600</td>\n",
              "      <td>4286.191</td>\n",
              "      <td>1377.376</td>\n",
              "      <td>98.398</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>2017-01-01</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>18078.879</td>\n",
              "      <td>19093.043</td>\n",
              "      <td>37171.922</td>\n",
              "      <td>20432.149</td>\n",
              "      <td>10761.931</td>\n",
              "      <td>4448.795</td>\n",
              "      <td>1426.468</td>\n",
              "      <td>102.579</td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>2018-01-01</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "   CountryPopFemale  CountryPopMale  ...     Location       Time\n",
              "0         16232.001       17138.803  ...  Afghanistan 2014-01-01\n",
              "1         16727.437       17686.166  ...  Afghanistan 2015-01-01\n",
              "2         17196.034       18186.994  ...  Afghanistan 2016-01-01\n",
              "3         17644.126       18651.985  ...  Afghanistan 2017-01-01\n",
              "4         18078.879       19093.043  ...  Afghanistan 2018-01-01\n",
              "\n",
              "[5 rows x 10 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 25
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "3KJP1_TxA2bs",
        "colab_type": "text"
      },
      "source": [
        "Select the most recent data."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "rNLu6PiBAxDM",
        "colab_type": "code",
        "outputId": "3acde16d-fcd9-477b-c027-b56b9d897c94",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 417
        }
      },
      "source": [
        "aggegated_population_df = aggegated_population_df.sort_values('Time').drop_duplicates(['Location'], keep='last')\n",
        "aggegated_population_df.head()"
      ],
      "execution_count": 26,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>CountryPopFemale</th>\n",
              "      <th>CountryPopMale</th>\n",
              "      <th>CountryPopTotal</th>\n",
              "      <th>CountryPop_0-20</th>\n",
              "      <th>CountryPop_20-40</th>\n",
              "      <th>CountryPop_40-60</th>\n",
              "      <th>CountryPop_60-80</th>\n",
              "      <th>CountryPop_80+</th>\n",
              "      <th>Location</th>\n",
              "      <th>Time</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>2417</th>\n",
              "      <td>34178.726</td>\n",
              "      <td>33351.435</td>\n",
              "      <td>67530.161</td>\n",
              "      <td>15634.443</td>\n",
              "      <td>17834.183</td>\n",
              "      <td>17763.044</td>\n",
              "      <td>12879.932</td>\n",
              "      <td>3418.559</td>\n",
              "      <td>United Kingdom</td>\n",
              "      <td>2019-01-01</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2519</th>\n",
              "      <td>193337.968</td>\n",
              "      <td>196415.223</td>\n",
              "      <td>389753.191</td>\n",
              "      <td>153429.571</td>\n",
              "      <td>127412.450</td>\n",
              "      <td>75929.068</td>\n",
              "      <td>29424.842</td>\n",
              "      <td>3557.260</td>\n",
              "      <td>WB region: Middle East and North Africa (exclu...</td>\n",
              "      <td>2019-01-01</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2375</th>\n",
              "      <td>265709.783</td>\n",
              "      <td>268213.492</td>\n",
              "      <td>533923.275</td>\n",
              "      <td>290642.723</td>\n",
              "      <td>149895.255</td>\n",
              "      <td>69210.044</td>\n",
              "      <td>22655.758</td>\n",
              "      <td>1519.495</td>\n",
              "      <td>UNICEF Regions: West and Central Africa</td>\n",
              "      <td>2019-01-01</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2627</th>\n",
              "      <td>14469.638</td>\n",
              "      <td>14692.284</td>\n",
              "      <td>29161.922</td>\n",
              "      <td>14585.766</td>\n",
              "      <td>9617.139</td>\n",
              "      <td>3621.970</td>\n",
              "      <td>1236.095</td>\n",
              "      <td>100.952</td>\n",
              "      <td>Yemen</td>\n",
              "      <td>2019-01-01</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2633</th>\n",
              "      <td>9017.820</td>\n",
              "      <td>8843.214</td>\n",
              "      <td>17861.034</td>\n",
              "      <td>9995.380</td>\n",
              "      <td>5186.638</td>\n",
              "      <td>2074.569</td>\n",
              "      <td>559.205</td>\n",
              "      <td>45.242</td>\n",
              "      <td>Zambia</td>\n",
              "      <td>2019-01-01</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "      CountryPopFemale  ...       Time\n",
              "2417         34178.726  ... 2019-01-01\n",
              "2519        193337.968  ... 2019-01-01\n",
              "2375        265709.783  ... 2019-01-01\n",
              "2627         14469.638  ... 2019-01-01\n",
              "2633          9017.820  ... 2019-01-01\n",
              "\n",
              "[5 rows x 10 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 26
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "YtsznEHyEJP_",
        "colab_type": "text"
      },
      "source": [
        "Now, drop Time and join with main data"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "5BzM29dEhX0y",
        "colab_type": "code",
        "outputId": "82de3201-d886-4e1b-e39f-b34cf10e3f04",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 256
        }
      },
      "source": [
        "aggegated_population_df.drop(columns='Time', inplace=True)\n",
        "\n",
        "main_df = merge_with_column_drop(\n",
        "    main_df,\n",
        "    aggegated_population_df,\n",
        "    right_df_column='Location'\n",
        ")\n",
        "main_df.head()"
      ],
      "execution_count": 27,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Id</th>\n",
              "      <th>Province/State</th>\n",
              "      <th>Country/Region</th>\n",
              "      <th>Lat</th>\n",
              "      <th>Long</th>\n",
              "      <th>Date</th>\n",
              "      <th>ConfirmedCases</th>\n",
              "      <th>Fatalities</th>\n",
              "      <th>ForecastId</th>\n",
              "      <th>LogNewConfirmedCases</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_1</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_2</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_3</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_4</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_5</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_6</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_7</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_8</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_9</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_10</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_11</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_12</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_13</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_14</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_15</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_16</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_17</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_18</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_19</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_20</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_21</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_22</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_23</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_24</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_25</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_26</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_27</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_28</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_29</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_30</th>\n",
              "      <th>...</th>\n",
              "      <th>LogNewFatalities_prev_day_9</th>\n",
              "      <th>LogNewFatalities_prev_day_10</th>\n",
              "      <th>LogNewFatalities_prev_day_11</th>\n",
              "      <th>LogNewFatalities_prev_day_12</th>\n",
              "      <th>LogNewFatalities_prev_day_13</th>\n",
              "      <th>LogNewFatalities_prev_day_14</th>\n",
              "      <th>LogNewFatalities_prev_day_15</th>\n",
              "      <th>LogNewFatalities_prev_day_16</th>\n",
              "      <th>LogNewFatalities_prev_day_17</th>\n",
              "      <th>LogNewFatalities_prev_day_18</th>\n",
              "      <th>LogNewFatalities_prev_day_19</th>\n",
              "      <th>LogNewFatalities_prev_day_20</th>\n",
              "      <th>LogNewFatalities_prev_day_21</th>\n",
              "      <th>LogNewFatalities_prev_day_22</th>\n",
              "      <th>LogNewFatalities_prev_day_23</th>\n",
              "      <th>LogNewFatalities_prev_day_24</th>\n",
              "      <th>LogNewFatalities_prev_day_25</th>\n",
              "      <th>LogNewFatalities_prev_day_26</th>\n",
              "      <th>LogNewFatalities_prev_day_27</th>\n",
              "      <th>LogNewFatalities_prev_day_28</th>\n",
              "      <th>LogNewFatalities_prev_day_29</th>\n",
              "      <th>LogNewFatalities_prev_day_30</th>\n",
              "      <th>Day</th>\n",
              "      <th>WeekDay</th>\n",
              "      <th>Days_since_ConfirmedCases=1</th>\n",
              "      <th>Days_since_Fatalities=1</th>\n",
              "      <th>Days_since_ConfirmedCases=10</th>\n",
              "      <th>Days_since_Fatalities=10</th>\n",
              "      <th>Days_since_ConfirmedCases=100</th>\n",
              "      <th>Days_since_Fatalities=100</th>\n",
              "      <th>Distance_to_origin</th>\n",
              "      <th>CountryArea</th>\n",
              "      <th>CountryPopFemale</th>\n",
              "      <th>CountryPopMale</th>\n",
              "      <th>CountryPopTotal</th>\n",
              "      <th>CountryPop_0-20</th>\n",
              "      <th>CountryPop_20-40</th>\n",
              "      <th>CountryPop_40-60</th>\n",
              "      <th>CountryPop_60-80</th>\n",
              "      <th>CountryPop_80+</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>1.0</td>\n",
              "      <td></td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0000</td>\n",
              "      <td>65.0000</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>4435.232618</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>18512.030</td>\n",
              "      <td>19529.727</td>\n",
              "      <td>38041.757</td>\n",
              "      <td>20676.365</td>\n",
              "      <td>11160.511</td>\n",
              "      <td>4620.268</td>\n",
              "      <td>1479.526</td>\n",
              "      <td>105.087</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>8185.0</td>\n",
              "      <td></td>\n",
              "      <td>Cyprus</td>\n",
              "      <td>35.1264</td>\n",
              "      <td>33.4299</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7177.529195</td>\n",
              "      <td>9240.0</td>\n",
              "      <td>599.277</td>\n",
              "      <td>599.297</td>\n",
              "      <td>1198.574</td>\n",
              "      <td>275.284</td>\n",
              "      <td>382.653</td>\n",
              "      <td>308.911</td>\n",
              "      <td>193.202</td>\n",
              "      <td>38.524</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>21112.0</td>\n",
              "      <td>Guam</td>\n",
              "      <td>US</td>\n",
              "      <td>13.4443</td>\n",
              "      <td>144.7937</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>3851.942689</td>\n",
              "      <td>9147420.0</td>\n",
              "      <td>166238.618</td>\n",
              "      <td>162826.299</td>\n",
              "      <td>329064.917</td>\n",
              "      <td>82289.916</td>\n",
              "      <td>90159.134</td>\n",
              "      <td>82846.126</td>\n",
              "      <td>60854.332</td>\n",
              "      <td>12915.409</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>8278.0</td>\n",
              "      <td></td>\n",
              "      <td>Czechia</td>\n",
              "      <td>49.8175</td>\n",
              "      <td>15.4730</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7897.624038</td>\n",
              "      <td>77220.0</td>\n",
              "      <td>5428.585</td>\n",
              "      <td>5260.628</td>\n",
              "      <td>10689.213</td>\n",
              "      <td>2152.923</td>\n",
              "      <td>2656.340</td>\n",
              "      <td>3107.360</td>\n",
              "      <td>2332.215</td>\n",
              "      <td>440.375</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>8371.0</td>\n",
              "      <td>Denmark</td>\n",
              "      <td>Denmark</td>\n",
              "      <td>56.2639</td>\n",
              "      <td>9.5018</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7931.069186</td>\n",
              "      <td>41990.0</td>\n",
              "      <td>2902.205</td>\n",
              "      <td>2869.672</td>\n",
              "      <td>5771.877</td>\n",
              "      <td>1287.864</td>\n",
              "      <td>1437.566</td>\n",
              "      <td>1556.036</td>\n",
              "      <td>1224.130</td>\n",
              "      <td>266.281</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>5 rows × 89 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "        Id Province/State  ... CountryPop_60-80  CountryPop_80+\n",
              "0      1.0                 ...         1479.526         105.087\n",
              "1   8185.0                 ...          193.202          38.524\n",
              "2  21112.0           Guam  ...        60854.332       12915.409\n",
              "3   8278.0                 ...         2332.215         440.375\n",
              "4   8371.0        Denmark  ...         1224.130         266.281\n",
              "\n",
              "[5 rows x 89 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 27
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "Qd3UQl7XHGkf",
        "colab_type": "text"
      },
      "source": [
        "### Country Population density feature <a name=\"country_population_density_feature\"></a>\n",
        "\n",
        "With both Area and Population data we can now compute Population density feature."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "HlguvbyUHR77",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "main_df['CountryPopDensity'] = main_df['CountryPopTotal'] / main_df['CountryArea']"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "17THKbaKIUot",
        "colab_type": "text"
      },
      "source": [
        "### Country Smoking rate feature <a name=\"country_smoking_rate_feature\"></a>\n",
        "\n",
        "Let's also add Smoking rate by Country data because smoking can influence the severity of respiratory diseases."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "uK8RsydoJA4w",
        "colab_type": "code",
        "outputId": "1c75995c-9a52-478c-82f2-a611a6fe6e16",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 394
        }
      },
      "source": [
        "!mkdir -p smoking\n",
        "os.chdir('smoking')\n",
        "!wget -nc http://api.worldbank.org/v2/en/indicator/SH.PRV.SMOK?downloadformat=csv -O smoking.zip\n",
        "!unzip -n smoking.zip  \n",
        "!ls -l ."
      ],
      "execution_count": 29,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "--2020-04-19 14:11:51--  http://api.worldbank.org/v2/en/indicator/SH.PRV.SMOK?downloadformat=csv\n",
            "Resolving api.worldbank.org (api.worldbank.org)... 107.23.127.3\n",
            "Connecting to api.worldbank.org (api.worldbank.org)|107.23.127.3|:80... connected.\n",
            "HTTP request sent, awaiting response... 200 OK\n",
            "Length: 18137 (18K) [application/zip]\n",
            "Saving to: ‘smoking.zip’\n",
            "\n",
            "\rsmoking.zip           0%[                    ]       0  --.-KB/s               \rsmoking.zip         100%[===================>]  17.71K  --.-KB/s    in 0.01s   \n",
            "\n",
            "2020-04-19 14:11:51 (1.41 MB/s) - ‘smoking.zip’ saved [18137/18137]\n",
            "\n",
            "Archive:  smoking.zip\n",
            "  inflating: Metadata_Indicator_API_SH.PRV.SMOK_DS2_en_csv_v2_937317.csv  \n",
            "  inflating: API_SH.PRV.SMOK_DS2_en_csv_v2_937317.csv  \n",
            "  inflating: Metadata_Country_API_SH.PRV.SMOK_DS2_en_csv_v2_937317.csv  \n",
            "total 136\n",
            "-rw-r--r-- 1 root root 78878 Apr  9 18:50 API_SH.PRV.SMOK_DS2_en_csv_v2_937317.csv\n",
            "-rw-r--r-- 1 root root 30906 Apr  9 18:50 Metadata_Country_API_SH.PRV.SMOK_DS2_en_csv_v2_937317.csv\n",
            "-rw-r--r-- 1 root root   447 Apr  9 18:50 Metadata_Indicator_API_SH.PRV.SMOK_DS2_en_csv_v2_937317.csv\n",
            "-rw-r--r-- 1 root root 18137 Apr 19 14:11 smoking.zip\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "1waTPJazJhR-",
        "colab_type": "code",
        "outputId": "1c9a78fc-7cb4-46fd-9a62-62ab4846a1d4",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 226
        }
      },
      "source": [
        "!head API_SH.PRV.SMOK_DS2_en_csv_v2_937317.csv"
      ],
      "execution_count": 30,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "﻿\"Data Source\",\"World Development Indicators\",\r\n",
            "\r\n",
            "\"Last Updated Date\",\"2020-04-09\",\r\n",
            "\r\n",
            "\"Country Name\",\"Country Code\",\"Indicator Name\",\"Indicator Code\",\"1960\",\"1961\",\"1962\",\"1963\",\"1964\",\"1965\",\"1966\",\"1967\",\"1968\",\"1969\",\"1970\",\"1971\",\"1972\",\"1973\",\"1974\",\"1975\",\"1976\",\"1977\",\"1978\",\"1979\",\"1980\",\"1981\",\"1982\",\"1983\",\"1984\",\"1985\",\"1986\",\"1987\",\"1988\",\"1989\",\"1990\",\"1991\",\"1992\",\"1993\",\"1994\",\"1995\",\"1996\",\"1997\",\"1998\",\"1999\",\"2000\",\"2001\",\"2002\",\"2003\",\"2004\",\"2005\",\"2006\",\"2007\",\"2008\",\"2009\",\"2010\",\"2011\",\"2012\",\"2013\",\"2014\",\"2015\",\"2016\",\"2017\",\"2018\",\"2019\",\r\n",
            "\"Aruba\",\"ABW\",\"Smoking prevalence, total (ages 15+)\",\"SH.PRV.SMOK\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\r\n",
            "\"Afghanistan\",\"AFG\",\"Smoking prevalence, total (ages 15+)\",\"SH.PRV.SMOK\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\r\n",
            "\"Angola\",\"AGO\",\"Smoking prevalence, total (ages 15+)\",\"SH.PRV.SMOK\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\r\n",
            "\"Albania\",\"ALB\",\"Smoking prevalence, total (ages 15+)\",\"SH.PRV.SMOK\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"34.8\",\"\",\"\",\"\",\"\",\"32.7\",\"\",\"\",\"\",\"\",\"31.2\",\"30.7\",\"30.2\",\"29.8\",\"29.5\",\"29.1\",\"28.7\",\"\",\"\",\"\",\r\n",
            "\"Andorra\",\"AND\",\"Smoking prevalence, total (ages 15+)\",\"SH.PRV.SMOK\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"37.4\",\"\",\"\",\"\",\"\",\"36\",\"\",\"\",\"\",\"\",\"34.8\",\"34.5\",\"34.2\",\"34.1\",\"33.9\",\"33.7\",\"33.5\",\"\",\"\",\"\",\r\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "DsUc9YiDJpER",
        "colab_type": "code",
        "outputId": "0cfcb140-610b-4c8f-e5d3-75b910e11b42",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 504
        }
      },
      "source": [
        "smoking_df = pd.read_csv('./API_SH.PRV.SMOK_DS2_en_csv_v2_937317.csv', skiprows=4)\n",
        "os.chdir('..')\n",
        "smoking_df.head()"
      ],
      "execution_count": 31,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Country Name</th>\n",
              "      <th>Country Code</th>\n",
              "      <th>Indicator Name</th>\n",
              "      <th>Indicator Code</th>\n",
              "      <th>1960</th>\n",
              "      <th>1961</th>\n",
              "      <th>1962</th>\n",
              "      <th>1963</th>\n",
              "      <th>1964</th>\n",
              "      <th>1965</th>\n",
              "      <th>1966</th>\n",
              "      <th>1967</th>\n",
              "      <th>1968</th>\n",
              "      <th>1969</th>\n",
              "      <th>1970</th>\n",
              "      <th>1971</th>\n",
              "      <th>1972</th>\n",
              "      <th>1973</th>\n",
              "      <th>1974</th>\n",
              "      <th>1975</th>\n",
              "      <th>1976</th>\n",
              "      <th>1977</th>\n",
              "      <th>1978</th>\n",
              "      <th>1979</th>\n",
              "      <th>1980</th>\n",
              "      <th>1981</th>\n",
              "      <th>1982</th>\n",
              "      <th>1983</th>\n",
              "      <th>1984</th>\n",
              "      <th>1985</th>\n",
              "      <th>1986</th>\n",
              "      <th>1987</th>\n",
              "      <th>1988</th>\n",
              "      <th>1989</th>\n",
              "      <th>1990</th>\n",
              "      <th>1991</th>\n",
              "      <th>1992</th>\n",
              "      <th>1993</th>\n",
              "      <th>1994</th>\n",
              "      <th>1995</th>\n",
              "      <th>1996</th>\n",
              "      <th>1997</th>\n",
              "      <th>1998</th>\n",
              "      <th>1999</th>\n",
              "      <th>2000</th>\n",
              "      <th>2001</th>\n",
              "      <th>2002</th>\n",
              "      <th>2003</th>\n",
              "      <th>2004</th>\n",
              "      <th>2005</th>\n",
              "      <th>2006</th>\n",
              "      <th>2007</th>\n",
              "      <th>2008</th>\n",
              "      <th>2009</th>\n",
              "      <th>2010</th>\n",
              "      <th>2011</th>\n",
              "      <th>2012</th>\n",
              "      <th>2013</th>\n",
              "      <th>2014</th>\n",
              "      <th>2015</th>\n",
              "      <th>2016</th>\n",
              "      <th>2017</th>\n",
              "      <th>2018</th>\n",
              "      <th>2019</th>\n",
              "      <th>Unnamed: 64</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>Aruba</td>\n",
              "      <td>ABW</td>\n",
              "      <td>Smoking prevalence, total (ages 15+)</td>\n",
              "      <td>SH.PRV.SMOK</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>AFG</td>\n",
              "      <td>Smoking prevalence, total (ages 15+)</td>\n",
              "      <td>SH.PRV.SMOK</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>Angola</td>\n",
              "      <td>AGO</td>\n",
              "      <td>Smoking prevalence, total (ages 15+)</td>\n",
              "      <td>SH.PRV.SMOK</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>Albania</td>\n",
              "      <td>ALB</td>\n",
              "      <td>Smoking prevalence, total (ages 15+)</td>\n",
              "      <td>SH.PRV.SMOK</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>34.8</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>32.7</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>31.2</td>\n",
              "      <td>30.7</td>\n",
              "      <td>30.2</td>\n",
              "      <td>29.8</td>\n",
              "      <td>29.5</td>\n",
              "      <td>29.1</td>\n",
              "      <td>28.7</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>Andorra</td>\n",
              "      <td>AND</td>\n",
              "      <td>Smoking prevalence, total (ages 15+)</td>\n",
              "      <td>SH.PRV.SMOK</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>37.4</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>36.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>34.8</td>\n",
              "      <td>34.5</td>\n",
              "      <td>34.2</td>\n",
              "      <td>34.1</td>\n",
              "      <td>33.9</td>\n",
              "      <td>33.7</td>\n",
              "      <td>33.5</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "  Country Name Country Code  ... 2019 Unnamed: 64\n",
              "0        Aruba          ABW  ...  NaN         NaN\n",
              "1  Afghanistan          AFG  ...  NaN         NaN\n",
              "2       Angola          AGO  ...  NaN         NaN\n",
              "3      Albania          ALB  ...  NaN         NaN\n",
              "4      Andorra          AND  ...  NaN         NaN\n",
              "\n",
              "[5 rows x 65 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 31
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "DimXLlG_J-o7",
        "colab_type": "text"
      },
      "source": [
        "We will use the last available data from recent years (2010 and later). "
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "wqfNkQuwKGEh",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "recent_year_columns = [str(year) for year in range(2010, 2020)]\n",
        "\n",
        "smoking_df['CountrySmokingRate'] = smoking_df[recent_year_columns].apply(\n",
        "    lambda row: row[row.last_valid_index()] if row.last_valid_index() else np.nan,\n",
        "    axis='columns'    \n",
        ")"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "8f2SYEB-KmWv",
        "colab_type": "text"
      },
      "source": [
        "Drop unneeded columns"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "ZEMpoYp5Kqlk",
        "colab_type": "code",
        "outputId": "d2cb66b5-c5d9-44d3-ed98-5230bf3539cc",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 206
        }
      },
      "source": [
        "smoking_df = smoking_df[['Country Name', 'CountrySmokingRate']]\n",
        "smoking_df.head()"
      ],
      "execution_count": 33,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Country Name</th>\n",
              "      <th>CountrySmokingRate</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>Aruba</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>Angola</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>Albania</td>\n",
              "      <td>28.7</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>Andorra</td>\n",
              "      <td>33.5</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "  Country Name  CountrySmokingRate\n",
              "0        Aruba                 NaN\n",
              "1  Afghanistan                 NaN\n",
              "2       Angola                 NaN\n",
              "3      Albania                28.7\n",
              "4      Andorra                33.5"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 33
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "40PrK13_LGT7",
        "colab_type": "text"
      },
      "source": [
        "Now, merge this data with main data by country."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "8Mwoe7nBLIww",
        "colab_type": "code",
        "outputId": "b3c3ca22-c569-4ea6-e2bf-b493d315909b",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 256
        }
      },
      "source": [
        "main_df = merge_with_column_drop(\n",
        "    main_df,\n",
        "    smoking_df,\n",
        "    right_df_column='Country Name'\n",
        ")\n",
        "main_df.head()"
      ],
      "execution_count": 34,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Id</th>\n",
              "      <th>Province/State</th>\n",
              "      <th>Country/Region</th>\n",
              "      <th>Lat</th>\n",
              "      <th>Long</th>\n",
              "      <th>Date</th>\n",
              "      <th>ConfirmedCases</th>\n",
              "      <th>Fatalities</th>\n",
              "      <th>ForecastId</th>\n",
              "      <th>LogNewConfirmedCases</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_1</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_2</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_3</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_4</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_5</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_6</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_7</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_8</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_9</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_10</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_11</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_12</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_13</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_14</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_15</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_16</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_17</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_18</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_19</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_20</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_21</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_22</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_23</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_24</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_25</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_26</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_27</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_28</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_29</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_30</th>\n",
              "      <th>...</th>\n",
              "      <th>LogNewFatalities_prev_day_11</th>\n",
              "      <th>LogNewFatalities_prev_day_12</th>\n",
              "      <th>LogNewFatalities_prev_day_13</th>\n",
              "      <th>LogNewFatalities_prev_day_14</th>\n",
              "      <th>LogNewFatalities_prev_day_15</th>\n",
              "      <th>LogNewFatalities_prev_day_16</th>\n",
              "      <th>LogNewFatalities_prev_day_17</th>\n",
              "      <th>LogNewFatalities_prev_day_18</th>\n",
              "      <th>LogNewFatalities_prev_day_19</th>\n",
              "      <th>LogNewFatalities_prev_day_20</th>\n",
              "      <th>LogNewFatalities_prev_day_21</th>\n",
              "      <th>LogNewFatalities_prev_day_22</th>\n",
              "      <th>LogNewFatalities_prev_day_23</th>\n",
              "      <th>LogNewFatalities_prev_day_24</th>\n",
              "      <th>LogNewFatalities_prev_day_25</th>\n",
              "      <th>LogNewFatalities_prev_day_26</th>\n",
              "      <th>LogNewFatalities_prev_day_27</th>\n",
              "      <th>LogNewFatalities_prev_day_28</th>\n",
              "      <th>LogNewFatalities_prev_day_29</th>\n",
              "      <th>LogNewFatalities_prev_day_30</th>\n",
              "      <th>Day</th>\n",
              "      <th>WeekDay</th>\n",
              "      <th>Days_since_ConfirmedCases=1</th>\n",
              "      <th>Days_since_Fatalities=1</th>\n",
              "      <th>Days_since_ConfirmedCases=10</th>\n",
              "      <th>Days_since_Fatalities=10</th>\n",
              "      <th>Days_since_ConfirmedCases=100</th>\n",
              "      <th>Days_since_Fatalities=100</th>\n",
              "      <th>Distance_to_origin</th>\n",
              "      <th>CountryArea</th>\n",
              "      <th>CountryPopFemale</th>\n",
              "      <th>CountryPopMale</th>\n",
              "      <th>CountryPopTotal</th>\n",
              "      <th>CountryPop_0-20</th>\n",
              "      <th>CountryPop_20-40</th>\n",
              "      <th>CountryPop_40-60</th>\n",
              "      <th>CountryPop_60-80</th>\n",
              "      <th>CountryPop_80+</th>\n",
              "      <th>CountryPopDensity</th>\n",
              "      <th>CountrySmokingRate</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>1.0</td>\n",
              "      <td></td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0000</td>\n",
              "      <td>65.0000</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>4435.232618</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>18512.030</td>\n",
              "      <td>19529.727</td>\n",
              "      <td>38041.757</td>\n",
              "      <td>20676.365</td>\n",
              "      <td>11160.511</td>\n",
              "      <td>4620.268</td>\n",
              "      <td>1479.526</td>\n",
              "      <td>105.087</td>\n",
              "      <td>0.058269</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>8185.0</td>\n",
              "      <td></td>\n",
              "      <td>Cyprus</td>\n",
              "      <td>35.1264</td>\n",
              "      <td>33.4299</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7177.529195</td>\n",
              "      <td>9240.0</td>\n",
              "      <td>599.277</td>\n",
              "      <td>599.297</td>\n",
              "      <td>1198.574</td>\n",
              "      <td>275.284</td>\n",
              "      <td>382.653</td>\n",
              "      <td>308.911</td>\n",
              "      <td>193.202</td>\n",
              "      <td>38.524</td>\n",
              "      <td>0.129716</td>\n",
              "      <td>36.4</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>21112.0</td>\n",
              "      <td>Guam</td>\n",
              "      <td>US</td>\n",
              "      <td>13.4443</td>\n",
              "      <td>144.7937</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>3851.942689</td>\n",
              "      <td>9147420.0</td>\n",
              "      <td>166238.618</td>\n",
              "      <td>162826.299</td>\n",
              "      <td>329064.917</td>\n",
              "      <td>82289.916</td>\n",
              "      <td>90159.134</td>\n",
              "      <td>82846.126</td>\n",
              "      <td>60854.332</td>\n",
              "      <td>12915.409</td>\n",
              "      <td>0.035974</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>8278.0</td>\n",
              "      <td></td>\n",
              "      <td>Czechia</td>\n",
              "      <td>49.8175</td>\n",
              "      <td>15.4730</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7897.624038</td>\n",
              "      <td>77220.0</td>\n",
              "      <td>5428.585</td>\n",
              "      <td>5260.628</td>\n",
              "      <td>10689.213</td>\n",
              "      <td>2152.923</td>\n",
              "      <td>2656.340</td>\n",
              "      <td>3107.360</td>\n",
              "      <td>2332.215</td>\n",
              "      <td>440.375</td>\n",
              "      <td>0.138425</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>8371.0</td>\n",
              "      <td>Denmark</td>\n",
              "      <td>Denmark</td>\n",
              "      <td>56.2639</td>\n",
              "      <td>9.5018</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7931.069186</td>\n",
              "      <td>41990.0</td>\n",
              "      <td>2902.205</td>\n",
              "      <td>2869.672</td>\n",
              "      <td>5771.877</td>\n",
              "      <td>1287.864</td>\n",
              "      <td>1437.566</td>\n",
              "      <td>1556.036</td>\n",
              "      <td>1224.130</td>\n",
              "      <td>266.281</td>\n",
              "      <td>0.137458</td>\n",
              "      <td>19.1</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>5 rows × 91 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "        Id Province/State  ... CountryPopDensity  CountrySmokingRate\n",
              "0      1.0                 ...          0.058269                 NaN\n",
              "1   8185.0                 ...          0.129716                36.4\n",
              "2  21112.0           Guam  ...          0.035974                 NaN\n",
              "3   8278.0                 ...          0.138425                 NaN\n",
              "4   8371.0        Denmark  ...          0.137458                19.1\n",
              "\n",
              "[5 rows x 91 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 34
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "xQFM8KLBLr4N",
        "colab_type": "text"
      },
      "source": [
        "### Country hospital beds per 1000 people <a name=\"country_hospital_beds_feature\"></a>\n",
        "\n",
        "Let's add some information about countries' health system.\n",
        "\n",
        "We will add the number of hospital beds per 1000 people first."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "6qWbXPD1L-x1",
        "colab_type": "code",
        "outputId": "3814a0f4-625e-4674-fc63-e58ad9cd2373",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 394
        }
      },
      "source": [
        "!mkdir -p hospital_beds\n",
        "os.chdir('hospital_beds')\n",
        "!wget -nc http://api.worldbank.org/v2/en/indicator/SH.MED.BEDS.ZS?downloadformat=csv -O hospital_beds.zip\n",
        "!unzip -n hospital_beds.zip  \n",
        "!ls -l ."
      ],
      "execution_count": 35,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "--2020-04-19 14:12:00--  http://api.worldbank.org/v2/en/indicator/SH.MED.BEDS.ZS?downloadformat=csv\n",
            "Resolving api.worldbank.org (api.worldbank.org)... 107.23.127.3\n",
            "Connecting to api.worldbank.org (api.worldbank.org)|107.23.127.3|:80... connected.\n",
            "HTTP request sent, awaiting response... 200 OK\n",
            "Length: 33566 (33K) [application/zip]\n",
            "Saving to: ‘hospital_beds.zip’\n",
            "\n",
            "\rhospital_beds.zip     0%[                    ]       0  --.-KB/s               \rhospital_beds.zip   100%[===================>]  32.78K  --.-KB/s    in 0.01s   \n",
            "\n",
            "2020-04-19 14:12:00 (2.52 MB/s) - ‘hospital_beds.zip’ saved [33566/33566]\n",
            "\n",
            "Archive:  hospital_beds.zip\n",
            "  inflating: Metadata_Indicator_API_SH.MED.BEDS.ZS_DS2_en_csv_v2_935968.csv  \n",
            "  inflating: API_SH.MED.BEDS.ZS_DS2_en_csv_v2_935968.csv  \n",
            "  inflating: Metadata_Country_API_SH.MED.BEDS.ZS_DS2_en_csv_v2_935968.csv  \n",
            "total 180\n",
            "-rw-r--r-- 1 root root 108825 Apr  9 15:42 API_SH.MED.BEDS.ZS_DS2_en_csv_v2_935968.csv\n",
            "-rw-r--r-- 1 root root  33566 Apr 19 14:12 hospital_beds.zip\n",
            "-rw-r--r-- 1 root root  30906 Apr  9 15:42 Metadata_Country_API_SH.MED.BEDS.ZS_DS2_en_csv_v2_935968.csv\n",
            "-rw-r--r-- 1 root root    403 Apr  9 15:42 Metadata_Indicator_API_SH.MED.BEDS.ZS_DS2_en_csv_v2_935968.csv\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Kr4el2maMOL9",
        "colab_type": "code",
        "outputId": "b8265736-c96f-4e66-ae42-65eb56262b91",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 226
        }
      },
      "source": [
        "!head API_SH.MED.BEDS.ZS_DS2_en_csv_v2_935968.csv"
      ],
      "execution_count": 36,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "﻿\"Data Source\",\"World Development Indicators\",\r\n",
            "\r\n",
            "\"Last Updated Date\",\"2020-04-09\",\r\n",
            "\r\n",
            "\"Country Name\",\"Country Code\",\"Indicator Name\",\"Indicator Code\",\"1960\",\"1961\",\"1962\",\"1963\",\"1964\",\"1965\",\"1966\",\"1967\",\"1968\",\"1969\",\"1970\",\"1971\",\"1972\",\"1973\",\"1974\",\"1975\",\"1976\",\"1977\",\"1978\",\"1979\",\"1980\",\"1981\",\"1982\",\"1983\",\"1984\",\"1985\",\"1986\",\"1987\",\"1988\",\"1989\",\"1990\",\"1991\",\"1992\",\"1993\",\"1994\",\"1995\",\"1996\",\"1997\",\"1998\",\"1999\",\"2000\",\"2001\",\"2002\",\"2003\",\"2004\",\"2005\",\"2006\",\"2007\",\"2008\",\"2009\",\"2010\",\"2011\",\"2012\",\"2013\",\"2014\",\"2015\",\"2016\",\"2017\",\"2018\",\"2019\",\r\n",
            "\"Aruba\",\"ABW\",\"Hospital beds (per 1,000 people)\",\"SH.MED.BEDS.ZS\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\r\n",
            "\"Afghanistan\",\"AFG\",\"Hospital beds (per 1,000 people)\",\"SH.MED.BEDS.ZS\",\"0.170626997947693\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"0.199000000953674\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"0.275599986314774\",\"\",\"\",\"\",\"\",\"\",\"0.3091000020504\",\"\",\"\",\"0.2497999966\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"0.3\",\"0.4\",\"0.4\",\"0.4\",\"0.4\",\"0.4\",\"0.4\",\"0.4\",\"0.4\",\"0.4\",\"0.4\",\"0.4\",\"0.5\",\"0.5\",\"0.5\",\"0.5\",\"\",\"\",\"\",\"\",\r\n",
            "\"Angola\",\"AGO\",\"Hospital beds (per 1,000 people)\",\"SH.MED.BEDS.ZS\",\"2.06146168708801\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"2.72099995613098\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"1.2913000584\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"0.8\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\r\n",
            "\"Albania\",\"ALB\",\"Hospital beds (per 1,000 people)\",\"SH.MED.BEDS.ZS\",\"5.1026759147644\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"4.27169990539551\",\"4.18709993362427\",\"4.16069984436035\",\"4.08620023727417\",\"4.13899993896484\",\"4.13880014419556\",\"4.06969976425171\",\"3.97000002861023\",\"3.93549990653992\",\"4.13210010528564\",\"4.0248999596\",\"3.9986999035\",\"4.0134000778\",\"3.8313999176\",\"3.0171000957\",\"3.1900000572\",\"3.1400001049\",\"3.0499999523\",\"3.0499999523\",\"3.0299999714\",\"3.3\",\"3.3\",\"3.1\",\"3.1\",\"3\",\"3.1\",\"3.1\",\"3.1\",\"\",\"2.8\",\"3\",\"2.6\",\"2.9\",\"2.9\",\"\",\"\",\"\",\"\",\"\",\"\",\r\n",
            "\"Andorra\",\"AND\",\"Hospital beds (per 1,000 people)\",\"SH.MED.BEDS.ZS\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"3.1800000668\",\"3\",\"3.0899999142\",\"3.2000000477\",\"3.2000000477\",\"2.5899999142\",\"\",\"3.2999999523\",\"\",\"2.7\",\"2.6\",\"2.6\",\"\",\"2.5\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\r\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "aAuW8w8uMWtD",
        "colab_type": "code",
        "outputId": "7330f061-777c-4f41-8995-a8faae3b2332",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 504
        }
      },
      "source": [
        "hospital_beds_df = pd.read_csv('./API_SH.MED.BEDS.ZS_DS2_en_csv_v2_935968.csv', skiprows=4)\n",
        "os.chdir('..')\n",
        "hospital_beds_df.head()"
      ],
      "execution_count": 37,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Country Name</th>\n",
              "      <th>Country Code</th>\n",
              "      <th>Indicator Name</th>\n",
              "      <th>Indicator Code</th>\n",
              "      <th>1960</th>\n",
              "      <th>1961</th>\n",
              "      <th>1962</th>\n",
              "      <th>1963</th>\n",
              "      <th>1964</th>\n",
              "      <th>1965</th>\n",
              "      <th>1966</th>\n",
              "      <th>1967</th>\n",
              "      <th>1968</th>\n",
              "      <th>1969</th>\n",
              "      <th>1970</th>\n",
              "      <th>1971</th>\n",
              "      <th>1972</th>\n",
              "      <th>1973</th>\n",
              "      <th>1974</th>\n",
              "      <th>1975</th>\n",
              "      <th>1976</th>\n",
              "      <th>1977</th>\n",
              "      <th>1978</th>\n",
              "      <th>1979</th>\n",
              "      <th>1980</th>\n",
              "      <th>1981</th>\n",
              "      <th>1982</th>\n",
              "      <th>1983</th>\n",
              "      <th>1984</th>\n",
              "      <th>1985</th>\n",
              "      <th>1986</th>\n",
              "      <th>1987</th>\n",
              "      <th>1988</th>\n",
              "      <th>1989</th>\n",
              "      <th>1990</th>\n",
              "      <th>1991</th>\n",
              "      <th>1992</th>\n",
              "      <th>1993</th>\n",
              "      <th>1994</th>\n",
              "      <th>1995</th>\n",
              "      <th>1996</th>\n",
              "      <th>1997</th>\n",
              "      <th>1998</th>\n",
              "      <th>1999</th>\n",
              "      <th>2000</th>\n",
              "      <th>2001</th>\n",
              "      <th>2002</th>\n",
              "      <th>2003</th>\n",
              "      <th>2004</th>\n",
              "      <th>2005</th>\n",
              "      <th>2006</th>\n",
              "      <th>2007</th>\n",
              "      <th>2008</th>\n",
              "      <th>2009</th>\n",
              "      <th>2010</th>\n",
              "      <th>2011</th>\n",
              "      <th>2012</th>\n",
              "      <th>2013</th>\n",
              "      <th>2014</th>\n",
              "      <th>2015</th>\n",
              "      <th>2016</th>\n",
              "      <th>2017</th>\n",
              "      <th>2018</th>\n",
              "      <th>2019</th>\n",
              "      <th>Unnamed: 64</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>Aruba</td>\n",
              "      <td>ABW</td>\n",
              "      <td>Hospital beds (per 1,000 people)</td>\n",
              "      <td>SH.MED.BEDS.ZS</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>AFG</td>\n",
              "      <td>Hospital beds (per 1,000 people)</td>\n",
              "      <td>SH.MED.BEDS.ZS</td>\n",
              "      <td>0.170627</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.199</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.2756</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.3091</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.2498</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.3</td>\n",
              "      <td>0.40</td>\n",
              "      <td>0.4</td>\n",
              "      <td>0.4</td>\n",
              "      <td>0.4</td>\n",
              "      <td>0.4</td>\n",
              "      <td>0.4</td>\n",
              "      <td>0.4</td>\n",
              "      <td>0.4</td>\n",
              "      <td>0.4</td>\n",
              "      <td>0.4</td>\n",
              "      <td>0.4</td>\n",
              "      <td>0.5</td>\n",
              "      <td>0.5</td>\n",
              "      <td>0.5</td>\n",
              "      <td>0.5</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>Angola</td>\n",
              "      <td>AGO</td>\n",
              "      <td>Hospital beds (per 1,000 people)</td>\n",
              "      <td>SH.MED.BEDS.ZS</td>\n",
              "      <td>2.061462</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>2.721</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>1.2913</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.8</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>Albania</td>\n",
              "      <td>ALB</td>\n",
              "      <td>Hospital beds (per 1,000 people)</td>\n",
              "      <td>SH.MED.BEDS.ZS</td>\n",
              "      <td>5.102676</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>4.2717</td>\n",
              "      <td>4.1871</td>\n",
              "      <td>4.1607</td>\n",
              "      <td>4.0862</td>\n",
              "      <td>4.139</td>\n",
              "      <td>4.1388</td>\n",
              "      <td>4.0697</td>\n",
              "      <td>3.9700</td>\n",
              "      <td>3.9355</td>\n",
              "      <td>4.1321</td>\n",
              "      <td>4.0249</td>\n",
              "      <td>3.9987</td>\n",
              "      <td>4.0134</td>\n",
              "      <td>3.8314</td>\n",
              "      <td>3.0171</td>\n",
              "      <td>3.19</td>\n",
              "      <td>3.14</td>\n",
              "      <td>3.05</td>\n",
              "      <td>3.05</td>\n",
              "      <td>3.03</td>\n",
              "      <td>3.3</td>\n",
              "      <td>3.30</td>\n",
              "      <td>3.1</td>\n",
              "      <td>3.1</td>\n",
              "      <td>3.0</td>\n",
              "      <td>3.1</td>\n",
              "      <td>3.1</td>\n",
              "      <td>3.1</td>\n",
              "      <td>NaN</td>\n",
              "      <td>2.8</td>\n",
              "      <td>3.0</td>\n",
              "      <td>2.6</td>\n",
              "      <td>2.9</td>\n",
              "      <td>2.9</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>Andorra</td>\n",
              "      <td>AND</td>\n",
              "      <td>Hospital beds (per 1,000 people)</td>\n",
              "      <td>SH.MED.BEDS.ZS</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>3.18</td>\n",
              "      <td>3.00</td>\n",
              "      <td>3.09</td>\n",
              "      <td>3.20</td>\n",
              "      <td>3.2</td>\n",
              "      <td>2.59</td>\n",
              "      <td>NaN</td>\n",
              "      <td>3.3</td>\n",
              "      <td>NaN</td>\n",
              "      <td>2.7</td>\n",
              "      <td>2.6</td>\n",
              "      <td>2.6</td>\n",
              "      <td>NaN</td>\n",
              "      <td>2.5</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "  Country Name Country Code  ... 2019 Unnamed: 64\n",
              "0        Aruba          ABW  ...  NaN         NaN\n",
              "1  Afghanistan          AFG  ...  NaN         NaN\n",
              "2       Angola          AGO  ...  NaN         NaN\n",
              "3      Albania          ALB  ...  NaN         NaN\n",
              "4      Andorra          AND  ...  NaN         NaN\n",
              "\n",
              "[5 rows x 65 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 37
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "QhmRv_Z-NjIH",
        "colab_type": "text"
      },
      "source": [
        "We will use the last available data from recent years (2010 and later). "
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "yZdsXWNyNmxu",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "recent_year_columns = [str(year) for year in range(2010, 2020)]\n",
        "\n",
        "hospital_beds_df['CountryHospitalBedsRate'] = hospital_beds_df[recent_year_columns].apply(\n",
        "    lambda row: row[row.last_valid_index()] if row.last_valid_index() else np.nan,\n",
        "    axis='columns'    \n",
        ")"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "oqZ6aAyIN5AD",
        "colab_type": "text"
      },
      "source": [
        "Drop unneeded columns"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "UHbZLDwaN95b",
        "colab_type": "code",
        "outputId": "d91e568a-41b6-4e82-dbca-53d03cc0f101",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 206
        }
      },
      "source": [
        "hospital_beds_df = hospital_beds_df[['Country Name', 'CountryHospitalBedsRate']]\n",
        "hospital_beds_df.head()"
      ],
      "execution_count": 39,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Country Name</th>\n",
              "      <th>CountryHospitalBedsRate</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>Aruba</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>0.5</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>Angola</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>Albania</td>\n",
              "      <td>2.9</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>Andorra</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "  Country Name  CountryHospitalBedsRate\n",
              "0        Aruba                      NaN\n",
              "1  Afghanistan                      0.5\n",
              "2       Angola                      NaN\n",
              "3      Albania                      2.9\n",
              "4      Andorra                      NaN"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 39
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "pUYpnIJEOKx4",
        "colab_type": "text"
      },
      "source": [
        "Now, merge this data with main data by country."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "l2EcWbVOONxU",
        "colab_type": "code",
        "outputId": "7ac77b77-8e07-4674-a265-5ab10cde2594",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 256
        }
      },
      "source": [
        "main_df = merge_with_column_drop(\n",
        "    main_df,\n",
        "    hospital_beds_df,\n",
        "    right_df_column='Country Name'\n",
        ")\n",
        "main_df.head()"
      ],
      "execution_count": 40,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Id</th>\n",
              "      <th>Province/State</th>\n",
              "      <th>Country/Region</th>\n",
              "      <th>Lat</th>\n",
              "      <th>Long</th>\n",
              "      <th>Date</th>\n",
              "      <th>ConfirmedCases</th>\n",
              "      <th>Fatalities</th>\n",
              "      <th>ForecastId</th>\n",
              "      <th>LogNewConfirmedCases</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_1</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_2</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_3</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_4</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_5</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_6</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_7</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_8</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_9</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_10</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_11</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_12</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_13</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_14</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_15</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_16</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_17</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_18</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_19</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_20</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_21</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_22</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_23</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_24</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_25</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_26</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_27</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_28</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_29</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_30</th>\n",
              "      <th>...</th>\n",
              "      <th>LogNewFatalities_prev_day_12</th>\n",
              "      <th>LogNewFatalities_prev_day_13</th>\n",
              "      <th>LogNewFatalities_prev_day_14</th>\n",
              "      <th>LogNewFatalities_prev_day_15</th>\n",
              "      <th>LogNewFatalities_prev_day_16</th>\n",
              "      <th>LogNewFatalities_prev_day_17</th>\n",
              "      <th>LogNewFatalities_prev_day_18</th>\n",
              "      <th>LogNewFatalities_prev_day_19</th>\n",
              "      <th>LogNewFatalities_prev_day_20</th>\n",
              "      <th>LogNewFatalities_prev_day_21</th>\n",
              "      <th>LogNewFatalities_prev_day_22</th>\n",
              "      <th>LogNewFatalities_prev_day_23</th>\n",
              "      <th>LogNewFatalities_prev_day_24</th>\n",
              "      <th>LogNewFatalities_prev_day_25</th>\n",
              "      <th>LogNewFatalities_prev_day_26</th>\n",
              "      <th>LogNewFatalities_prev_day_27</th>\n",
              "      <th>LogNewFatalities_prev_day_28</th>\n",
              "      <th>LogNewFatalities_prev_day_29</th>\n",
              "      <th>LogNewFatalities_prev_day_30</th>\n",
              "      <th>Day</th>\n",
              "      <th>WeekDay</th>\n",
              "      <th>Days_since_ConfirmedCases=1</th>\n",
              "      <th>Days_since_Fatalities=1</th>\n",
              "      <th>Days_since_ConfirmedCases=10</th>\n",
              "      <th>Days_since_Fatalities=10</th>\n",
              "      <th>Days_since_ConfirmedCases=100</th>\n",
              "      <th>Days_since_Fatalities=100</th>\n",
              "      <th>Distance_to_origin</th>\n",
              "      <th>CountryArea</th>\n",
              "      <th>CountryPopFemale</th>\n",
              "      <th>CountryPopMale</th>\n",
              "      <th>CountryPopTotal</th>\n",
              "      <th>CountryPop_0-20</th>\n",
              "      <th>CountryPop_20-40</th>\n",
              "      <th>CountryPop_40-60</th>\n",
              "      <th>CountryPop_60-80</th>\n",
              "      <th>CountryPop_80+</th>\n",
              "      <th>CountryPopDensity</th>\n",
              "      <th>CountrySmokingRate</th>\n",
              "      <th>CountryHospitalBedsRate</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>1.0</td>\n",
              "      <td></td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0000</td>\n",
              "      <td>65.0000</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>4435.232618</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>18512.030</td>\n",
              "      <td>19529.727</td>\n",
              "      <td>38041.757</td>\n",
              "      <td>20676.365</td>\n",
              "      <td>11160.511</td>\n",
              "      <td>4620.268</td>\n",
              "      <td>1479.526</td>\n",
              "      <td>105.087</td>\n",
              "      <td>0.058269</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.5</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>8185.0</td>\n",
              "      <td></td>\n",
              "      <td>Cyprus</td>\n",
              "      <td>35.1264</td>\n",
              "      <td>33.4299</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7177.529195</td>\n",
              "      <td>9240.0</td>\n",
              "      <td>599.277</td>\n",
              "      <td>599.297</td>\n",
              "      <td>1198.574</td>\n",
              "      <td>275.284</td>\n",
              "      <td>382.653</td>\n",
              "      <td>308.911</td>\n",
              "      <td>193.202</td>\n",
              "      <td>38.524</td>\n",
              "      <td>0.129716</td>\n",
              "      <td>36.4</td>\n",
              "      <td>3.4</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>21112.0</td>\n",
              "      <td>Guam</td>\n",
              "      <td>US</td>\n",
              "      <td>13.4443</td>\n",
              "      <td>144.7937</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>3851.942689</td>\n",
              "      <td>9147420.0</td>\n",
              "      <td>166238.618</td>\n",
              "      <td>162826.299</td>\n",
              "      <td>329064.917</td>\n",
              "      <td>82289.916</td>\n",
              "      <td>90159.134</td>\n",
              "      <td>82846.126</td>\n",
              "      <td>60854.332</td>\n",
              "      <td>12915.409</td>\n",
              "      <td>0.035974</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>8278.0</td>\n",
              "      <td></td>\n",
              "      <td>Czechia</td>\n",
              "      <td>49.8175</td>\n",
              "      <td>15.4730</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7897.624038</td>\n",
              "      <td>77220.0</td>\n",
              "      <td>5428.585</td>\n",
              "      <td>5260.628</td>\n",
              "      <td>10689.213</td>\n",
              "      <td>2152.923</td>\n",
              "      <td>2656.340</td>\n",
              "      <td>3107.360</td>\n",
              "      <td>2332.215</td>\n",
              "      <td>440.375</td>\n",
              "      <td>0.138425</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>8371.0</td>\n",
              "      <td>Denmark</td>\n",
              "      <td>Denmark</td>\n",
              "      <td>56.2639</td>\n",
              "      <td>9.5018</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7931.069186</td>\n",
              "      <td>41990.0</td>\n",
              "      <td>2902.205</td>\n",
              "      <td>2869.672</td>\n",
              "      <td>5771.877</td>\n",
              "      <td>1287.864</td>\n",
              "      <td>1437.566</td>\n",
              "      <td>1556.036</td>\n",
              "      <td>1224.130</td>\n",
              "      <td>266.281</td>\n",
              "      <td>0.137458</td>\n",
              "      <td>19.1</td>\n",
              "      <td>2.5</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>5 rows × 92 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "        Id Province/State  ... CountrySmokingRate  CountryHospitalBedsRate\n",
              "0      1.0                 ...                NaN                      0.5\n",
              "1   8185.0                 ...               36.4                      3.4\n",
              "2  21112.0           Guam  ...                NaN                      NaN\n",
              "3   8278.0                 ...                NaN                      NaN\n",
              "4   8371.0        Denmark  ...               19.1                      2.5\n",
              "\n",
              "[5 rows x 92 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 40
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "yxyLUTiLPWGT",
        "colab_type": "text"
      },
      "source": [
        "### Country Health Expenditure <a name=\"country_health_expenditure_feature\"></a>\n",
        "\n",
        "Now, let's add Health expenditure per capita, PPP (in current international $) feature."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "colab_type": "code",
        "outputId": "d6e3de73-5c6c-4b2f-e018-9c6ea6776fd5",
        "id": "zlOWPWCAQIwp",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 394
        }
      },
      "source": [
        "!mkdir -p health_expenditure\n",
        "os.chdir('health_expenditure')\n",
        "!wget -nc http://api.worldbank.org/v2/en/indicator/SH.XPD.CHEX.PP.CD?downloadformat=csv -O health_expenditure.zip\n",
        "!unzip -n health_expenditure.zip  \n",
        "!ls -l ."
      ],
      "execution_count": 41,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "--2020-04-19 14:12:08--  http://api.worldbank.org/v2/en/indicator/SH.XPD.CHEX.PP.CD?downloadformat=csv\n",
            "Resolving api.worldbank.org (api.worldbank.org)... 34.237.118.134\n",
            "Connecting to api.worldbank.org (api.worldbank.org)|34.237.118.134|:80... connected.\n",
            "HTTP request sent, awaiting response... 200 OK\n",
            "Length: 45914 (45K) [application/zip]\n",
            "Saving to: ‘health_expenditure.zip’\n",
            "\n",
            "\rhealth_expenditure.   0%[                    ]       0  --.-KB/s               \rhealth_expenditure. 100%[===================>]  44.84K  --.-KB/s    in 0.02s   \n",
            "\n",
            "2020-04-19 14:12:08 (1.76 MB/s) - ‘health_expenditure.zip’ saved [45914/45914]\n",
            "\n",
            "Archive:  health_expenditure.zip\n",
            "  inflating: Metadata_Indicator_API_SH.XPD.CHEX.PP.CD_DS2_en_csv_v2_939222.csv  \n",
            "  inflating: API_SH.XPD.CHEX.PP.CD_DS2_en_csv_v2_939222.csv  \n",
            "  inflating: Metadata_Country_API_SH.XPD.CHEX.PP.CD_DS2_en_csv_v2_939222.csv  \n",
            "total 224\n",
            "-rw-r--r-- 1 root root 143137 Apr  9 22:50 API_SH.XPD.CHEX.PP.CD_DS2_en_csv_v2_939222.csv\n",
            "-rw-r--r-- 1 root root  45914 Apr 19 14:12 health_expenditure.zip\n",
            "-rw-r--r-- 1 root root  30906 Apr  9 22:50 Metadata_Country_API_SH.XPD.CHEX.PP.CD_DS2_en_csv_v2_939222.csv\n",
            "-rw-r--r-- 1 root root    380 Apr  9 22:50 Metadata_Indicator_API_SH.XPD.CHEX.PP.CD_DS2_en_csv_v2_939222.csv\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "-lzQ9G-YQYrf",
        "colab_type": "code",
        "outputId": "22f1c347-32c1-4b05-d042-6082b34ae6a1",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 226
        }
      },
      "source": [
        "!head API_SH.XPD.CHEX.PP.CD_DS2_en_csv_v2_939222.csv"
      ],
      "execution_count": 42,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "﻿\"Data Source\",\"World Development Indicators\",\r\n",
            "\r\n",
            "\"Last Updated Date\",\"2020-04-09\",\r\n",
            "\r\n",
            "\"Country Name\",\"Country Code\",\"Indicator Name\",\"Indicator Code\",\"1960\",\"1961\",\"1962\",\"1963\",\"1964\",\"1965\",\"1966\",\"1967\",\"1968\",\"1969\",\"1970\",\"1971\",\"1972\",\"1973\",\"1974\",\"1975\",\"1976\",\"1977\",\"1978\",\"1979\",\"1980\",\"1981\",\"1982\",\"1983\",\"1984\",\"1985\",\"1986\",\"1987\",\"1988\",\"1989\",\"1990\",\"1991\",\"1992\",\"1993\",\"1994\",\"1995\",\"1996\",\"1997\",\"1998\",\"1999\",\"2000\",\"2001\",\"2002\",\"2003\",\"2004\",\"2005\",\"2006\",\"2007\",\"2008\",\"2009\",\"2010\",\"2011\",\"2012\",\"2013\",\"2014\",\"2015\",\"2016\",\"2017\",\"2018\",\"2019\",\r\n",
            "\"Aruba\",\"ABW\",\"Current health expenditure per capita, PPP (current international $)\",\"SH.XPD.CHEX.PP.CD\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\r\n",
            "\"Afghanistan\",\"AFG\",\"Current health expenditure per capita, PPP (current international $)\",\"SH.XPD.CHEX.PP.CD\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"79.7509994506836\",\"80.9199752807617\",\"87.67626953125\",\"98.6120834350586\",\"111.271469116211\",\"104.657890319824\",\"127.603996276855\",\"143.849624633789\",\"132.271286010742\",\"138.822616577148\",\"143.965316772461\",\"164.160110473633\",\"176.930862426758\",\"183.927856445313\",\"174.73063659668\",\"\",\"\",\"\",\r\n",
            "\"Angola\",\"AGO\",\"Current health expenditure per capita, PPP (current international $)\",\"SH.XPD.CHEX.PP.CD\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"71.804817199707\",\"174.036361694336\",\"117.858177185059\",\"127.356391906738\",\"156.64697265625\",\"129.017425537109\",\"134.776672363281\",\"168.597549438477\",\"206.017562866211\",\"233.626068115234\",\"167.820114135742\",\"167.915237426758\",\"162.328979492188\",\"190.890869140625\",\"175.377624511719\",\"185.089279174805\",\"183.510406494141\",\"185.854034423828\",\"\",\"\",\r\n",
            "\"Albania\",\"ALB\",\"Current health expenditure per capita, PPP (current international $)\",\"SH.XPD.CHEX.PP.CD\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\r\n",
            "\"Andorra\",\"AND\",\"Current health expenditure per capita, PPP (current international $)\",\"SH.XPD.CHEX.PP.CD\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"3049.00610351563\",\"3143.03515625\",\"3284.2294921875\",\"3277.25073242188\",\"3350.19384765625\",\"3741.40380859375\",\"3974.61474609375\",\"4098.1201171875\",\"3983.9091796875\",\"3966.13012695313\",\"3937.48754882813\",\"4010.31762695313\",\"4414.71142578125\",\"4652.24169921875\",\"4963.498046875\",\"5093.17626953125\",\"4990.35546875\",\"5237.24169921875\",\"\",\"\",\r\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Ib3jSvfLQf7o",
        "colab_type": "code",
        "outputId": "8db56c99-e5f1-422a-ca6e-eecccb4624eb",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 591
        }
      },
      "source": [
        "health_expenditure_df = pd.read_csv('./API_SH.XPD.CHEX.PP.CD_DS2_en_csv_v2_939222.csv', skiprows=4)\n",
        "os.chdir('..')\n",
        "health_expenditure_df.head()"
      ],
      "execution_count": 43,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Country Name</th>\n",
              "      <th>Country Code</th>\n",
              "      <th>Indicator Name</th>\n",
              "      <th>Indicator Code</th>\n",
              "      <th>1960</th>\n",
              "      <th>1961</th>\n",
              "      <th>1962</th>\n",
              "      <th>1963</th>\n",
              "      <th>1964</th>\n",
              "      <th>1965</th>\n",
              "      <th>1966</th>\n",
              "      <th>1967</th>\n",
              "      <th>1968</th>\n",
              "      <th>1969</th>\n",
              "      <th>1970</th>\n",
              "      <th>1971</th>\n",
              "      <th>1972</th>\n",
              "      <th>1973</th>\n",
              "      <th>1974</th>\n",
              "      <th>1975</th>\n",
              "      <th>1976</th>\n",
              "      <th>1977</th>\n",
              "      <th>1978</th>\n",
              "      <th>1979</th>\n",
              "      <th>1980</th>\n",
              "      <th>1981</th>\n",
              "      <th>1982</th>\n",
              "      <th>1983</th>\n",
              "      <th>1984</th>\n",
              "      <th>1985</th>\n",
              "      <th>1986</th>\n",
              "      <th>1987</th>\n",
              "      <th>1988</th>\n",
              "      <th>1989</th>\n",
              "      <th>1990</th>\n",
              "      <th>1991</th>\n",
              "      <th>1992</th>\n",
              "      <th>1993</th>\n",
              "      <th>1994</th>\n",
              "      <th>1995</th>\n",
              "      <th>1996</th>\n",
              "      <th>1997</th>\n",
              "      <th>1998</th>\n",
              "      <th>1999</th>\n",
              "      <th>2000</th>\n",
              "      <th>2001</th>\n",
              "      <th>2002</th>\n",
              "      <th>2003</th>\n",
              "      <th>2004</th>\n",
              "      <th>2005</th>\n",
              "      <th>2006</th>\n",
              "      <th>2007</th>\n",
              "      <th>2008</th>\n",
              "      <th>2009</th>\n",
              "      <th>2010</th>\n",
              "      <th>2011</th>\n",
              "      <th>2012</th>\n",
              "      <th>2013</th>\n",
              "      <th>2014</th>\n",
              "      <th>2015</th>\n",
              "      <th>2016</th>\n",
              "      <th>2017</th>\n",
              "      <th>2018</th>\n",
              "      <th>2019</th>\n",
              "      <th>Unnamed: 64</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>Aruba</td>\n",
              "      <td>ABW</td>\n",
              "      <td>Current health expenditure per capita, PPP (cu...</td>\n",
              "      <td>SH.XPD.CHEX.PP.CD</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>AFG</td>\n",
              "      <td>Current health expenditure per capita, PPP (cu...</td>\n",
              "      <td>SH.XPD.CHEX.PP.CD</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>79.750999</td>\n",
              "      <td>80.919975</td>\n",
              "      <td>87.676270</td>\n",
              "      <td>98.612083</td>\n",
              "      <td>111.271469</td>\n",
              "      <td>104.657890</td>\n",
              "      <td>127.603996</td>\n",
              "      <td>143.849625</td>\n",
              "      <td>132.271286</td>\n",
              "      <td>138.822617</td>\n",
              "      <td>143.965317</td>\n",
              "      <td>164.160110</td>\n",
              "      <td>176.930862</td>\n",
              "      <td>183.927856</td>\n",
              "      <td>174.730637</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>Angola</td>\n",
              "      <td>AGO</td>\n",
              "      <td>Current health expenditure per capita, PPP (cu...</td>\n",
              "      <td>SH.XPD.CHEX.PP.CD</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>71.804817</td>\n",
              "      <td>174.036362</td>\n",
              "      <td>117.858177</td>\n",
              "      <td>127.356392</td>\n",
              "      <td>156.646973</td>\n",
              "      <td>129.017426</td>\n",
              "      <td>134.776672</td>\n",
              "      <td>168.597549</td>\n",
              "      <td>206.017563</td>\n",
              "      <td>233.626068</td>\n",
              "      <td>167.820114</td>\n",
              "      <td>167.915237</td>\n",
              "      <td>162.328979</td>\n",
              "      <td>190.890869</td>\n",
              "      <td>175.377625</td>\n",
              "      <td>185.089279</td>\n",
              "      <td>183.510406</td>\n",
              "      <td>185.854034</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>Albania</td>\n",
              "      <td>ALB</td>\n",
              "      <td>Current health expenditure per capita, PPP (cu...</td>\n",
              "      <td>SH.XPD.CHEX.PP.CD</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>Andorra</td>\n",
              "      <td>AND</td>\n",
              "      <td>Current health expenditure per capita, PPP (cu...</td>\n",
              "      <td>SH.XPD.CHEX.PP.CD</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>3049.006104</td>\n",
              "      <td>3143.035156</td>\n",
              "      <td>3284.229492</td>\n",
              "      <td>3277.250732</td>\n",
              "      <td>3350.193848</td>\n",
              "      <td>3741.403809</td>\n",
              "      <td>3974.614746</td>\n",
              "      <td>4098.120117</td>\n",
              "      <td>3983.909180</td>\n",
              "      <td>3966.130127</td>\n",
              "      <td>3937.487549</td>\n",
              "      <td>4010.317627</td>\n",
              "      <td>4414.711426</td>\n",
              "      <td>4652.241699</td>\n",
              "      <td>4963.498047</td>\n",
              "      <td>5093.176270</td>\n",
              "      <td>4990.355469</td>\n",
              "      <td>5237.241699</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "  Country Name Country Code  ... 2019 Unnamed: 64\n",
              "0        Aruba          ABW  ...  NaN         NaN\n",
              "1  Afghanistan          AFG  ...  NaN         NaN\n",
              "2       Angola          AGO  ...  NaN         NaN\n",
              "3      Albania          ALB  ...  NaN         NaN\n",
              "4      Andorra          AND  ...  NaN         NaN\n",
              "\n",
              "[5 rows x 65 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 43
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "XwFzpw6yQySh",
        "colab_type": "text"
      },
      "source": [
        "We will use the last available data from recent years (2010 and later). "
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "YHdi0Py_QzOs",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "recent_year_columns = [str(year) for year in range(2010, 2020)]\n",
        "\n",
        "health_expenditure_df['CountryHealthExpenditurePerCapitaPPP'] = health_expenditure_df[recent_year_columns].apply(\n",
        "    lambda row: row[row.last_valid_index()] if row.last_valid_index() else np.nan,\n",
        "    axis='columns'    \n",
        ")"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "UtuzU6KVRCdf",
        "colab_type": "text"
      },
      "source": [
        "Drop unneeded columns\n"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "38g2WZe3RDk3",
        "colab_type": "code",
        "outputId": "80fcef09-cd26-4756-f385-65490ae4c851",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 206
        }
      },
      "source": [
        "health_expenditure_df = health_expenditure_df[['Country Name', 'CountryHealthExpenditurePerCapitaPPP']]\n",
        "health_expenditure_df.head()"
      ],
      "execution_count": 45,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Country Name</th>\n",
              "      <th>CountryHealthExpenditurePerCapitaPPP</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>Aruba</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>174.730637</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>Angola</td>\n",
              "      <td>185.854034</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>Albania</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>Andorra</td>\n",
              "      <td>5237.241699</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>"
            ],
            "text/plain": [
              "  Country Name  CountryHealthExpenditurePerCapitaPPP\n",
              "0        Aruba                                   NaN\n",
              "1  Afghanistan                            174.730637\n",
              "2       Angola                            185.854034\n",
              "3      Albania                                   NaN\n",
              "4      Andorra                           5237.241699"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 45
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "oh6LBo2ZRWoS",
        "colab_type": "text"
      },
      "source": [
        "Now, merge this data with main data by country.\n"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "011eb8rxRb08",
        "colab_type": "code",
        "outputId": "a07af4f9-dc09-4bc7-9df2-63029ac4e1e1",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 256
        }
      },
      "source": [
        "main_df = merge_with_column_drop(\n",
        "    main_df,\n",
        "    health_expenditure_df,\n",
        "    right_df_column='Country Name'\n",
        ")\n",
        "main_df.head()"
      ],
      "execution_count": 46,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Id</th>\n",
              "      <th>Province/State</th>\n",
              "      <th>Country/Region</th>\n",
              "      <th>Lat</th>\n",
              "      <th>Long</th>\n",
              "      <th>Date</th>\n",
              "      <th>ConfirmedCases</th>\n",
              "      <th>Fatalities</th>\n",
              "      <th>ForecastId</th>\n",
              "      <th>LogNewConfirmedCases</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_1</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_2</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_3</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_4</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_5</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_6</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_7</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_8</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_9</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_10</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_11</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_12</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_13</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_14</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_15</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_16</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_17</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_18</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_19</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_20</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_21</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_22</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_23</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_24</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_25</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_26</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_27</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_28</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_29</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_30</th>\n",
              "      <th>...</th>\n",
              "      <th>LogNewFatalities_prev_day_13</th>\n",
              "      <th>LogNewFatalities_prev_day_14</th>\n",
              "      <th>LogNewFatalities_prev_day_15</th>\n",
              "      <th>LogNewFatalities_prev_day_16</th>\n",
              "      <th>LogNewFatalities_prev_day_17</th>\n",
              "      <th>LogNewFatalities_prev_day_18</th>\n",
              "      <th>LogNewFatalities_prev_day_19</th>\n",
              "      <th>LogNewFatalities_prev_day_20</th>\n",
              "      <th>LogNewFatalities_prev_day_21</th>\n",
              "      <th>LogNewFatalities_prev_day_22</th>\n",
              "      <th>LogNewFatalities_prev_day_23</th>\n",
              "      <th>LogNewFatalities_prev_day_24</th>\n",
              "      <th>LogNewFatalities_prev_day_25</th>\n",
              "      <th>LogNewFatalities_prev_day_26</th>\n",
              "      <th>LogNewFatalities_prev_day_27</th>\n",
              "      <th>LogNewFatalities_prev_day_28</th>\n",
              "      <th>LogNewFatalities_prev_day_29</th>\n",
              "      <th>LogNewFatalities_prev_day_30</th>\n",
              "      <th>Day</th>\n",
              "      <th>WeekDay</th>\n",
              "      <th>Days_since_ConfirmedCases=1</th>\n",
              "      <th>Days_since_Fatalities=1</th>\n",
              "      <th>Days_since_ConfirmedCases=10</th>\n",
              "      <th>Days_since_Fatalities=10</th>\n",
              "      <th>Days_since_ConfirmedCases=100</th>\n",
              "      <th>Days_since_Fatalities=100</th>\n",
              "      <th>Distance_to_origin</th>\n",
              "      <th>CountryArea</th>\n",
              "      <th>CountryPopFemale</th>\n",
              "      <th>CountryPopMale</th>\n",
              "      <th>CountryPopTotal</th>\n",
              "      <th>CountryPop_0-20</th>\n",
              "      <th>CountryPop_20-40</th>\n",
              "      <th>CountryPop_40-60</th>\n",
              "      <th>CountryPop_60-80</th>\n",
              "      <th>CountryPop_80+</th>\n",
              "      <th>CountryPopDensity</th>\n",
              "      <th>CountrySmokingRate</th>\n",
              "      <th>CountryHospitalBedsRate</th>\n",
              "      <th>CountryHealthExpenditurePerCapitaPPP</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>1.0</td>\n",
              "      <td></td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0000</td>\n",
              "      <td>65.0000</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>4435.232618</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>18512.030</td>\n",
              "      <td>19529.727</td>\n",
              "      <td>38041.757</td>\n",
              "      <td>20676.365</td>\n",
              "      <td>11160.511</td>\n",
              "      <td>4620.268</td>\n",
              "      <td>1479.526</td>\n",
              "      <td>105.087</td>\n",
              "      <td>0.058269</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.5</td>\n",
              "      <td>174.730637</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>8185.0</td>\n",
              "      <td></td>\n",
              "      <td>Cyprus</td>\n",
              "      <td>35.1264</td>\n",
              "      <td>33.4299</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7177.529195</td>\n",
              "      <td>9240.0</td>\n",
              "      <td>599.277</td>\n",
              "      <td>599.297</td>\n",
              "      <td>1198.574</td>\n",
              "      <td>275.284</td>\n",
              "      <td>382.653</td>\n",
              "      <td>308.911</td>\n",
              "      <td>193.202</td>\n",
              "      <td>38.524</td>\n",
              "      <td>0.129716</td>\n",
              "      <td>36.4</td>\n",
              "      <td>3.4</td>\n",
              "      <td>2430.176025</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>21112.0</td>\n",
              "      <td>Guam</td>\n",
              "      <td>US</td>\n",
              "      <td>13.4443</td>\n",
              "      <td>144.7937</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>3851.942689</td>\n",
              "      <td>9147420.0</td>\n",
              "      <td>166238.618</td>\n",
              "      <td>162826.299</td>\n",
              "      <td>329064.917</td>\n",
              "      <td>82289.916</td>\n",
              "      <td>90159.134</td>\n",
              "      <td>82846.126</td>\n",
              "      <td>60854.332</td>\n",
              "      <td>12915.409</td>\n",
              "      <td>0.035974</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>8278.0</td>\n",
              "      <td></td>\n",
              "      <td>Czechia</td>\n",
              "      <td>49.8175</td>\n",
              "      <td>15.4730</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7897.624038</td>\n",
              "      <td>77220.0</td>\n",
              "      <td>5428.585</td>\n",
              "      <td>5260.628</td>\n",
              "      <td>10689.213</td>\n",
              "      <td>2152.923</td>\n",
              "      <td>2656.340</td>\n",
              "      <td>3107.360</td>\n",
              "      <td>2332.215</td>\n",
              "      <td>440.375</td>\n",
              "      <td>0.138425</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>8371.0</td>\n",
              "      <td>Denmark</td>\n",
              "      <td>Denmark</td>\n",
              "      <td>56.2639</td>\n",
              "      <td>9.5018</td>\n",
              "      <td>2020-01-22</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7931.069186</td>\n",
              "      <td>41990.0</td>\n",
              "      <td>2902.205</td>\n",
              "      <td>2869.672</td>\n",
              "      <td>5771.877</td>\n",
              "      <td>1287.864</td>\n",
              "      <td>1437.566</td>\n",
              "      <td>1556.036</td>\n",
              "      <td>1224.130</td>\n",
              "      <td>266.281</td>\n",
              "      <td>0.137458</td>\n",
              "      <td>19.1</td>\n",
              "      <td>2.5</td>\n",
              "      <td>5509.995605</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>5 rows × 93 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "        Id  ... CountryHealthExpenditurePerCapitaPPP\n",
              "0      1.0  ...                           174.730637\n",
              "1   8185.0  ...                          2430.176025\n",
              "2  21112.0  ...                                  NaN\n",
              "3   8278.0  ...                                  NaN\n",
              "4   8371.0  ...                          5509.995605\n",
              "\n",
              "[5 rows x 93 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 46
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "To5EPZPHn5if",
        "colab_type": "text"
      },
      "source": [
        "## Prepare data for training <a name=\"prepare_for_training\"></a>\n",
        "\n",
        "Split data to train, validation and test by date.\n",
        "\n",
        "Construct features (by removing label and non-features data from the original dataframe) and labels for train, validation and test parts."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "fD9v3eMwHJtz",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "last_train_date = pd.Timestamp(2020, 3, 11)\n",
        "last_eval_date = pd.Timestamp(2020, 3, 24)\n",
        "last_test_date = pd.Timestamp(2020, 4, 23)\n",
        "\n",
        "train_df = main_df[main_df['Date'] <= last_train_date].copy()\n",
        "eval_df = main_df[(main_df['Date'] > last_train_date) & (main_df['Date'] <= last_eval_date)].copy()\n",
        "test_df = main_df[main_df['Date'] > last_eval_date].copy()\n",
        "\n",
        "# return features_df, labels\n",
        "def preprocess_df(df):\n",
        "    labels = df[['LogNewConfirmedCases', 'LogNewFatalities']].copy()\n",
        "    features_df = df.drop(\n",
        "        columns=['Id', 'ForecastId', 'ConfirmedCases', 'LogNewConfirmedCases', 'Fatalities', 'LogNewFatalities', 'Date']\n",
        "    ).copy()\n",
        "    \n",
        "    return features_df, labels\n",
        "\n",
        "train_features_df, train_labels = preprocess_df(train_df)\n",
        "eval_features_df, eval_labels = preprocess_df(eval_df)\n",
        "test_features_df, _ = preprocess_df(test_df)"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "CLf7521nJJAM",
        "colab_type": "code",
        "outputId": "2e597b9e-67a3-4c9b-a471-2948b09096db",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 256
        }
      },
      "source": [
        "train_features_df.head()"
      ],
      "execution_count": 48,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Province/State</th>\n",
              "      <th>Country/Region</th>\n",
              "      <th>Lat</th>\n",
              "      <th>Long</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_1</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_2</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_3</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_4</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_5</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_6</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_7</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_8</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_9</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_10</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_11</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_12</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_13</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_14</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_15</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_16</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_17</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_18</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_19</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_20</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_21</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_22</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_23</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_24</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_25</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_26</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_27</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_28</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_29</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_30</th>\n",
              "      <th>LogNewFatalities_prev_day_1</th>\n",
              "      <th>LogNewFatalities_prev_day_2</th>\n",
              "      <th>LogNewFatalities_prev_day_3</th>\n",
              "      <th>LogNewFatalities_prev_day_4</th>\n",
              "      <th>LogNewFatalities_prev_day_5</th>\n",
              "      <th>LogNewFatalities_prev_day_6</th>\n",
              "      <th>...</th>\n",
              "      <th>LogNewFatalities_prev_day_13</th>\n",
              "      <th>LogNewFatalities_prev_day_14</th>\n",
              "      <th>LogNewFatalities_prev_day_15</th>\n",
              "      <th>LogNewFatalities_prev_day_16</th>\n",
              "      <th>LogNewFatalities_prev_day_17</th>\n",
              "      <th>LogNewFatalities_prev_day_18</th>\n",
              "      <th>LogNewFatalities_prev_day_19</th>\n",
              "      <th>LogNewFatalities_prev_day_20</th>\n",
              "      <th>LogNewFatalities_prev_day_21</th>\n",
              "      <th>LogNewFatalities_prev_day_22</th>\n",
              "      <th>LogNewFatalities_prev_day_23</th>\n",
              "      <th>LogNewFatalities_prev_day_24</th>\n",
              "      <th>LogNewFatalities_prev_day_25</th>\n",
              "      <th>LogNewFatalities_prev_day_26</th>\n",
              "      <th>LogNewFatalities_prev_day_27</th>\n",
              "      <th>LogNewFatalities_prev_day_28</th>\n",
              "      <th>LogNewFatalities_prev_day_29</th>\n",
              "      <th>LogNewFatalities_prev_day_30</th>\n",
              "      <th>Day</th>\n",
              "      <th>WeekDay</th>\n",
              "      <th>Days_since_ConfirmedCases=1</th>\n",
              "      <th>Days_since_Fatalities=1</th>\n",
              "      <th>Days_since_ConfirmedCases=10</th>\n",
              "      <th>Days_since_Fatalities=10</th>\n",
              "      <th>Days_since_ConfirmedCases=100</th>\n",
              "      <th>Days_since_Fatalities=100</th>\n",
              "      <th>Distance_to_origin</th>\n",
              "      <th>CountryArea</th>\n",
              "      <th>CountryPopFemale</th>\n",
              "      <th>CountryPopMale</th>\n",
              "      <th>CountryPopTotal</th>\n",
              "      <th>CountryPop_0-20</th>\n",
              "      <th>CountryPop_20-40</th>\n",
              "      <th>CountryPop_40-60</th>\n",
              "      <th>CountryPop_60-80</th>\n",
              "      <th>CountryPop_80+</th>\n",
              "      <th>CountryPopDensity</th>\n",
              "      <th>CountrySmokingRate</th>\n",
              "      <th>CountryHospitalBedsRate</th>\n",
              "      <th>CountryHealthExpenditurePerCapitaPPP</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td></td>\n",
              "      <td>Afghanistan</td>\n",
              "      <td>33.0000</td>\n",
              "      <td>65.0000</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>4435.232618</td>\n",
              "      <td>652860.0</td>\n",
              "      <td>18512.030</td>\n",
              "      <td>19529.727</td>\n",
              "      <td>38041.757</td>\n",
              "      <td>20676.365</td>\n",
              "      <td>11160.511</td>\n",
              "      <td>4620.268</td>\n",
              "      <td>1479.526</td>\n",
              "      <td>105.087</td>\n",
              "      <td>0.058269</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.5</td>\n",
              "      <td>174.730637</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td></td>\n",
              "      <td>Cyprus</td>\n",
              "      <td>35.1264</td>\n",
              "      <td>33.4299</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7177.529195</td>\n",
              "      <td>9240.0</td>\n",
              "      <td>599.277</td>\n",
              "      <td>599.297</td>\n",
              "      <td>1198.574</td>\n",
              "      <td>275.284</td>\n",
              "      <td>382.653</td>\n",
              "      <td>308.911</td>\n",
              "      <td>193.202</td>\n",
              "      <td>38.524</td>\n",
              "      <td>0.129716</td>\n",
              "      <td>36.4</td>\n",
              "      <td>3.4</td>\n",
              "      <td>2430.176025</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>Guam</td>\n",
              "      <td>US</td>\n",
              "      <td>13.4443</td>\n",
              "      <td>144.7937</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>3851.942689</td>\n",
              "      <td>9147420.0</td>\n",
              "      <td>166238.618</td>\n",
              "      <td>162826.299</td>\n",
              "      <td>329064.917</td>\n",
              "      <td>82289.916</td>\n",
              "      <td>90159.134</td>\n",
              "      <td>82846.126</td>\n",
              "      <td>60854.332</td>\n",
              "      <td>12915.409</td>\n",
              "      <td>0.035974</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td></td>\n",
              "      <td>Czechia</td>\n",
              "      <td>49.8175</td>\n",
              "      <td>15.4730</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7897.624038</td>\n",
              "      <td>77220.0</td>\n",
              "      <td>5428.585</td>\n",
              "      <td>5260.628</td>\n",
              "      <td>10689.213</td>\n",
              "      <td>2152.923</td>\n",
              "      <td>2656.340</td>\n",
              "      <td>3107.360</td>\n",
              "      <td>2332.215</td>\n",
              "      <td>440.375</td>\n",
              "      <td>0.138425</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>Denmark</td>\n",
              "      <td>Denmark</td>\n",
              "      <td>56.2639</td>\n",
              "      <td>9.5018</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>...</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0</td>\n",
              "      <td>2</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>7931.069186</td>\n",
              "      <td>41990.0</td>\n",
              "      <td>2902.205</td>\n",
              "      <td>2869.672</td>\n",
              "      <td>5771.877</td>\n",
              "      <td>1287.864</td>\n",
              "      <td>1437.566</td>\n",
              "      <td>1556.036</td>\n",
              "      <td>1224.130</td>\n",
              "      <td>266.281</td>\n",
              "      <td>0.137458</td>\n",
              "      <td>19.1</td>\n",
              "      <td>2.5</td>\n",
              "      <td>5509.995605</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>5 rows × 86 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "  Province/State  ... CountryHealthExpenditurePerCapitaPPP\n",
              "0                 ...                           174.730637\n",
              "1                 ...                          2430.176025\n",
              "2           Guam  ...                                  NaN\n",
              "3                 ...                                  NaN\n",
              "4        Denmark  ...                          5509.995605\n",
              "\n",
              "[5 rows x 86 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 48
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "n_FTuSzhJZEP",
        "colab_type": "text"
      },
      "source": [
        "Categorical features"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "CKW31V6JJYrs",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "cat_features = ['Province/State', 'Country/Region']"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "Zttyx5vhaXFI",
        "colab_type": "text"
      },
      "source": [
        "## Models training <a name=\"models_training\"></a>\n",
        "\n",
        "Now, construct models that predict LogNewConfirmedCases and LogNewFatalities for the next day.\n",
        "\n",
        "We will use RMSE as an objective and evaluation metric for training, that will correspond to RMSLE (Root Mean Square Logarithmic Error) metric for NewConfirmedCases and NewFatalities.\n",
        "\n",
        "$$RMSLE(labels, predictions) = \\sqrt{\\frac{1}{n}\\sum_{i=1}^{n}{\\Big(log(labels_i + 1) - log(predictions_i + 1)\\Big)^2}}$$\n",
        "\n",
        "Such metric is natural for this task (model should weight errors between 1000 and 1100 and 100000 and 110000 approximately the same).\n",
        "\n",
        "For prediction values in the original scale model prediction output should be transformed back to the original scale with the reverse transformation (can be preformed using numpy.expm1 function).\n",
        "\n",
        "We'll train models for 1000 iterations.\n",
        "\n",
        "\n"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "dxgp1LOrJ51V",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "iterations = 1000"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "G4NpZ6miJpn2",
        "colab_type": "text"
      },
      "source": [
        "CatBoost allows Categorical features values can be used as is in DataFrame."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "VrJkAewhJk86",
        "colab_type": "code",
        "outputId": "c969cdb1-17a5-4936-bd5e-c11ae4a69f4c",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 715
        }
      },
      "source": [
        "print ('catboost version', cb.__version__)\n",
        "\n",
        "catboost_models = {}\n",
        "\n",
        "for prediction_name in ['LogNewConfirmedCases', 'LogNewFatalities']:\n",
        "    model = cb.CatBoostRegressor(\n",
        "        has_time=True,\n",
        "        iterations=iterations\n",
        "    )\n",
        "\n",
        "    model.fit(\n",
        "        train_features_df,\n",
        "        train_labels[prediction_name],\n",
        "        eval_set=(eval_features_df, eval_labels[prediction_name]),\n",
        "        cat_features=cat_features,\n",
        "        verbose=100  # print metrics each 100 iterations\n",
        "    )\n",
        "    \n",
        "    catboost_models[prediction_name] = model\n",
        "    print ('CatBoost: prediction of %s: RMSLE on test = %s' % (prediction_name, model.evals_result_['validation']['RMSE'][-1]))"
      ],
      "execution_count": 51,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "catboost version 0.22\n",
            "Learning rate set to 0.074929\n",
            "0:\tlearn: 0.8444130\ttest: 2.2561020\tbest: 2.2561020 (0)\ttotal: 79.4ms\tremaining: 1m 19s\n",
            "100:\tlearn: 0.2849727\ttest: 0.8850558\tbest: 0.8850558 (100)\ttotal: 2.2s\tremaining: 19.6s\n",
            "200:\tlearn: 0.2518107\ttest: 0.8737440\tbest: 0.8737323 (198)\ttotal: 4.25s\tremaining: 16.9s\n",
            "300:\tlearn: 0.2288005\ttest: 0.8734222\tbest: 0.8722002 (273)\ttotal: 6.27s\tremaining: 14.6s\n",
            "400:\tlearn: 0.2078918\ttest: 0.8766954\tbest: 0.8720236 (318)\ttotal: 8.37s\tremaining: 12.5s\n",
            "500:\tlearn: 0.1899614\ttest: 0.8815886\tbest: 0.8720236 (318)\ttotal: 10.5s\tremaining: 10.4s\n",
            "600:\tlearn: 0.1765715\ttest: 0.8839863\tbest: 0.8720236 (318)\ttotal: 12.6s\tremaining: 8.36s\n",
            "700:\tlearn: 0.1650007\ttest: 0.8869404\tbest: 0.8720236 (318)\ttotal: 14.7s\tremaining: 6.26s\n",
            "800:\tlearn: 0.1547044\ttest: 0.8882405\tbest: 0.8720236 (318)\ttotal: 16.8s\tremaining: 4.17s\n",
            "900:\tlearn: 0.1458812\ttest: 0.8884831\tbest: 0.8720236 (318)\ttotal: 18.9s\tremaining: 2.08s\n",
            "999:\tlearn: 0.1379156\ttest: 0.8917756\tbest: 0.8720236 (318)\ttotal: 21s\tremaining: 0us\n",
            "\n",
            "bestTest = 0.8720236025\n",
            "bestIteration = 318\n",
            "\n",
            "Shrink model to first 319 iterations.\n",
            "CatBoost: prediction of LogNewConfirmedCases: RMSLE on test = 0.8917755772136071\n",
            "Learning rate set to 0.074929\n",
            "0:\tlearn: 0.2846849\ttest: 0.7751307\tbest: 0.7751307 (0)\ttotal: 22.4ms\tremaining: 22.4s\n",
            "100:\tlearn: 0.0583554\ttest: 0.3493678\tbest: 0.3493678 (100)\ttotal: 2.08s\tremaining: 18.6s\n",
            "200:\tlearn: 0.0461636\ttest: 0.3449327\tbest: 0.3449327 (200)\ttotal: 4.14s\tremaining: 16.4s\n",
            "300:\tlearn: 0.0359213\ttest: 0.3416266\tbest: 0.3415318 (297)\ttotal: 6.24s\tremaining: 14.5s\n",
            "400:\tlearn: 0.0274293\ttest: 0.3410587\tbest: 0.3410214 (398)\ttotal: 8.34s\tremaining: 12.5s\n",
            "500:\tlearn: 0.0217875\ttest: 0.3409957\tbest: 0.3409543 (498)\ttotal: 10.4s\tremaining: 10.4s\n",
            "600:\tlearn: 0.0171285\ttest: 0.3406960\tbest: 0.3405870 (550)\ttotal: 12.6s\tremaining: 8.33s\n",
            "700:\tlearn: 0.0140178\ttest: 0.3402807\tbest: 0.3402373 (692)\ttotal: 14.7s\tremaining: 6.25s\n",
            "800:\tlearn: 0.0115103\ttest: 0.3402232\tbest: 0.3402147 (798)\ttotal: 16.8s\tremaining: 4.17s\n",
            "900:\tlearn: 0.0095381\ttest: 0.3404695\tbest: 0.3402147 (798)\ttotal: 18.9s\tremaining: 2.08s\n",
            "999:\tlearn: 0.0079940\ttest: 0.3405940\tbest: 0.3402147 (798)\ttotal: 21s\tremaining: 0us\n",
            "\n",
            "bestTest = 0.3402146803\n",
            "bestIteration = 798\n",
            "\n",
            "Shrink model to first 799 iterations.\n",
            "CatBoost: prediction of LogNewFatalities: RMSLE on test = 0.34059397104647504\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "iI8pVMqdJjRb",
        "colab_type": "text"
      },
      "source": [
        "## Feature importance in the models <a name=\"feature_importance\"></a>\n",
        "\n",
        "Let's look at feature importances.\n",
        "For CatBoost use [PredictionValuesChange](https://catboost.ai/docs/concepts/fstr.html#fstr__regular-feature-importance).\n",
        "\n",
        "We'll print only 25 most important features for clarity.\n"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "3ydN6CMEJMJ5",
        "colab_type": "code",
        "outputId": "0180e06e-b3c1-42c4-944c-10abc78eb911",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        }
      },
      "source": [
        "for prediction_name in ['LogNewConfirmedCases', 'LogNewFatalities']:\n",
        "    print ('\\nCatBoost: prediction of %s. Feature importance. Type=PredictionValuesChange' % prediction_name)\n",
        "    print (\n",
        "        catboost_models[prediction_name].get_feature_importance(\n",
        "            type=cb.EFstrType.PredictionValuesChange,\n",
        "            prettified=True\n",
        "        ).head(25).to_string()\n",
        "    )"
      ],
      "execution_count": 52,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "\n",
            "CatBoost: prediction of LogNewConfirmedCases. Feature importance. Type=PredictionValuesChange\n",
            "                          Feature Id  Importances\n",
            "0    LogNewConfirmedCases_prev_day_1    22.109213\n",
            "1    LogNewConfirmedCases_prev_day_2    17.254841\n",
            "2       Days_since_ConfirmedCases=10    11.929176\n",
            "3        Days_since_ConfirmedCases=1    11.340144\n",
            "4    LogNewConfirmedCases_prev_day_3     6.377358\n",
            "5                                Day     2.969185\n",
            "6           Days_since_Fatalities=10     2.720522\n",
            "7      Days_since_ConfirmedCases=100     1.865486\n",
            "8    LogNewConfirmedCases_prev_day_4     1.732866\n",
            "9                 Distance_to_origin     1.259510\n",
            "10         Days_since_Fatalities=100     1.179583\n",
            "11  LogNewConfirmedCases_prev_day_10     1.139283\n",
            "12  LogNewConfirmedCases_prev_day_24     1.134655\n",
            "13   LogNewConfirmedCases_prev_day_5     1.125969\n",
            "14                  CountryPop_60-80     0.963053\n",
            "15       LogNewFatalities_prev_day_3     0.914145\n",
            "16                  CountryPop_40-60     0.747576\n",
            "17       LogNewFatalities_prev_day_2     0.722008\n",
            "18                              Long     0.608342\n",
            "19           Days_since_Fatalities=1     0.587399\n",
            "20   LogNewConfirmedCases_prev_day_7     0.583528\n",
            "21                               Lat     0.536044\n",
            "22   LogNewConfirmedCases_prev_day_8     0.527629\n",
            "23                    Province/State     0.495591\n",
            "24  LogNewConfirmedCases_prev_day_27     0.444949\n",
            "\n",
            "CatBoost: prediction of LogNewFatalities. Feature importance. Type=PredictionValuesChange\n",
            "                          Feature Id  Importances\n",
            "0           Days_since_Fatalities=10    26.907773\n",
            "1            Days_since_Fatalities=1    12.810340\n",
            "2        LogNewFatalities_prev_day_2     8.786807\n",
            "3          Days_since_Fatalities=100     5.176575\n",
            "4    LogNewConfirmedCases_prev_day_9     2.796640\n",
            "5    LogNewConfirmedCases_prev_day_2     2.743006\n",
            "6        LogNewFatalities_prev_day_3     2.312393\n",
            "7                  CountryPopDensity     2.179349\n",
            "8   LogNewConfirmedCases_prev_day_10     1.811663\n",
            "9                   CountryPopFemale     1.657966\n",
            "10       LogNewFatalities_prev_day_1     1.542263\n",
            "11   LogNewConfirmedCases_prev_day_1     1.466262\n",
            "12   LogNewConfirmedCases_prev_day_8     1.398892\n",
            "13  LogNewConfirmedCases_prev_day_11     1.350219\n",
            "14                  CountryPop_40-60     1.336757\n",
            "15                Distance_to_origin     1.336277\n",
            "16       LogNewFatalities_prev_day_6     1.303100\n",
            "17   LogNewConfirmedCases_prev_day_3     1.186486\n",
            "18   LogNewConfirmedCases_prev_day_7     1.135694\n",
            "19   LogNewConfirmedCases_prev_day_6     1.100854\n",
            "20  LogNewConfirmedCases_prev_day_14     1.001467\n",
            "21                    CountryPop_80+     0.845002\n",
            "22       LogNewFatalities_prev_day_9     0.793612\n",
            "23      LogNewFatalities_prev_day_24     0.776731\n",
            "24      LogNewFatalities_prev_day_26     0.720919\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "jRnM6SwW_PHl",
        "colab_type": "text"
      },
      "source": [
        "## Create predictions for eval and test data. <a name=\"predictions\"></a>\n",
        "\n",
        "For forecasting further into the future (more than a single day) we will use an incremental (by days) approach:\n",
        "\n",
        "1. Predict Log New Confirmed Cases and Fatalities for the next unknown day.\n",
        "2. Confirmed Cases and Fatalities for this day are incremented from the previous day based on predicted New Confirmed Cases and Fatalities.\n",
        "3. Use predicted Log New Confirmed Cases and Fatalities for this day to initialize time delay embedding features corresponding to this day for future days.\n",
        "\n",
        "This procedure is then repeated for the new next prediction day and so on."
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "aTR3pxvsiUUb",
        "colab_type": "text"
      },
      "source": [
        "Common function for eval and test:"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "ivRAFKbg_Ovv",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "def predict_for_dataset(df, features_df, prev_day_df, first_date, last_date, update_features_data):\n",
        "    df['PredictedLogNewConfirmedCases'] = np.nan\n",
        "    df['PredictedLogNewFatalities'] = np.nan\n",
        "    df['PredictedConfirmedCases'] = np.nan\n",
        "    df['PredictedFatalities'] = np.nan\n",
        "\n",
        "    for day in pd.date_range(first_date, last_date):\n",
        "        day_df = df[df['Date'] == day]\n",
        "        day_features_pool = cb.Pool(features_df.loc[day_df.index], cat_features=cat_features)\n",
        "\n",
        "        # predict LogNew* data\n",
        "        for prediction_type in ['LogNewConfirmedCases', 'LogNewFatalities']:\n",
        "            # prediction is imprecise and can produce negative values, clip them\n",
        "            df.loc[day_df.index, 'Predicted' + prediction_type] = np.maximum(\n",
        "                catboost_models[prediction_type].predict(day_features_pool),\n",
        "                0.0\n",
        "            )\n",
        "\n",
        "        day_predictions_df = df.loc[day_df.index][\n",
        "            location_columns + ['PredictedLogNewConfirmedCases', 'PredictedLogNewFatalities']\n",
        "        ]\n",
        "\n",
        "        # update Predicted ConfirmedCases and Fatalities\n",
        "        for field in ['ConfirmedCases', 'Fatalities']:\n",
        "            prev_day_field = field if day == first_eval_date else ('Predicted' + field)\n",
        "            merged_df = day_predictions_df.merge(\n",
        "                right=prev_day_df[location_columns + [prev_day_field]],\n",
        "                how='inner',\n",
        "                on=location_columns\n",
        "            )\n",
        "\n",
        "            df.loc[day_df.index, 'Predicted' + field] = merged_df.apply(\n",
        "                lambda row: row[prev_day_field] + np.rint(np.expm1(row['PredictedLogNew' + field])),\n",
        "                axis='columns'\n",
        "            ).values\n",
        "\n",
        "        if update_features_data:\n",
        "            # fill time delay embedding features based on this day for next days\n",
        "            for next_day in pd.date_range(day + pd.Timedelta(days=1), last_date):\n",
        "                next_day_features_df = features_df[df['Date'] == next_day]\n",
        "\n",
        "                merged_df = next_day_features_df[location_columns].merge(\n",
        "                    right=day_predictions_df,\n",
        "                    how='inner',\n",
        "                    on=location_columns\n",
        "                )\n",
        "\n",
        "                prev_day_idx = (next_day - day).days\n",
        "                for prediction_type in ['LogNewConfirmedCases', 'LogNewFatalities']:\n",
        "                    features_df.loc[next_day_features_df.index, prediction_type + '_prev_day_%s' % prev_day_idx] = (\n",
        "                        merged_df['Predicted' + prediction_type].values\n",
        "                    )\n",
        "\n",
        "        # select by day_df.index again to get Predicted* columns\n",
        "        prev_day_df = df.loc[day_df.index]\n"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "l_UO2zbRkPvi",
        "colab_type": "text"
      },
      "source": [
        "Create predictions for eval data"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "kqBsTO-_kTku",
        "colab_type": "code",
        "outputId": "6706a429-595a-4601-f40c-35a6b085489e",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 256
        }
      },
      "source": [
        "prev_day_df = train_df.loc[train_df['Date'] == last_train_date] \n",
        "first_eval_date = last_train_date + pd.Timedelta(days=1)\n",
        "\n",
        "predict_for_dataset(eval_df, eval_features_df, prev_day_df, first_eval_date, last_eval_date, update_features_data=False)\n",
        "\n",
        "eval_df.head()"
      ],
      "execution_count": 54,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Id</th>\n",
              "      <th>Province/State</th>\n",
              "      <th>Country/Region</th>\n",
              "      <th>Lat</th>\n",
              "      <th>Long</th>\n",
              "      <th>Date</th>\n",
              "      <th>ConfirmedCases</th>\n",
              "      <th>Fatalities</th>\n",
              "      <th>ForecastId</th>\n",
              "      <th>LogNewConfirmedCases</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_1</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_2</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_3</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_4</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_5</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_6</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_7</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_8</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_9</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_10</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_11</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_12</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_13</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_14</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_15</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_16</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_17</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_18</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_19</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_20</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_21</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_22</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_23</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_24</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_25</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_26</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_27</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_28</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_29</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_30</th>\n",
              "      <th>...</th>\n",
              "      <th>LogNewFatalities_prev_day_17</th>\n",
              "      <th>LogNewFatalities_prev_day_18</th>\n",
              "      <th>LogNewFatalities_prev_day_19</th>\n",
              "      <th>LogNewFatalities_prev_day_20</th>\n",
              "      <th>LogNewFatalities_prev_day_21</th>\n",
              "      <th>LogNewFatalities_prev_day_22</th>\n",
              "      <th>LogNewFatalities_prev_day_23</th>\n",
              "      <th>LogNewFatalities_prev_day_24</th>\n",
              "      <th>LogNewFatalities_prev_day_25</th>\n",
              "      <th>LogNewFatalities_prev_day_26</th>\n",
              "      <th>LogNewFatalities_prev_day_27</th>\n",
              "      <th>LogNewFatalities_prev_day_28</th>\n",
              "      <th>LogNewFatalities_prev_day_29</th>\n",
              "      <th>LogNewFatalities_prev_day_30</th>\n",
              "      <th>Day</th>\n",
              "      <th>WeekDay</th>\n",
              "      <th>Days_since_ConfirmedCases=1</th>\n",
              "      <th>Days_since_Fatalities=1</th>\n",
              "      <th>Days_since_ConfirmedCases=10</th>\n",
              "      <th>Days_since_Fatalities=10</th>\n",
              "      <th>Days_since_ConfirmedCases=100</th>\n",
              "      <th>Days_since_Fatalities=100</th>\n",
              "      <th>Distance_to_origin</th>\n",
              "      <th>CountryArea</th>\n",
              "      <th>CountryPopFemale</th>\n",
              "      <th>CountryPopMale</th>\n",
              "      <th>CountryPopTotal</th>\n",
              "      <th>CountryPop_0-20</th>\n",
              "      <th>CountryPop_20-40</th>\n",
              "      <th>CountryPop_40-60</th>\n",
              "      <th>CountryPop_60-80</th>\n",
              "      <th>CountryPop_80+</th>\n",
              "      <th>CountryPopDensity</th>\n",
              "      <th>CountrySmokingRate</th>\n",
              "      <th>CountryHospitalBedsRate</th>\n",
              "      <th>CountryHealthExpenditurePerCapitaPPP</th>\n",
              "      <th>PredictedLogNewConfirmedCases</th>\n",
              "      <th>PredictedLogNewFatalities</th>\n",
              "      <th>PredictedConfirmedCases</th>\n",
              "      <th>PredictedFatalities</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>13100</th>\n",
              "      <td>6003.0</td>\n",
              "      <td>Jiangxi</td>\n",
              "      <td>China</td>\n",
              "      <td>27.6140</td>\n",
              "      <td>115.7221</td>\n",
              "      <td>2020-03-12</td>\n",
              "      <td>935.0</td>\n",
              "      <td>1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>1.386294</td>\n",
              "      <td>1.791759</td>\n",
              "      <td>2.564949</td>\n",
              "      <td>2.639057</td>\n",
              "      <td>3.367296</td>\n",
              "      <td>3.367296</td>\n",
              "      <td>3.713572</td>\n",
              "      <td>3.526361</td>\n",
              "      <td>...</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>50</td>\n",
              "      <td>3</td>\n",
              "      <td>50.0</td>\n",
              "      <td>31.0</td>\n",
              "      <td>48.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>44.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>501.214503</td>\n",
              "      <td>9388210.0</td>\n",
              "      <td>698159.433</td>\n",
              "      <td>735624.259</td>\n",
              "      <td>1433783.692</td>\n",
              "      <td>338099.542</td>\n",
              "      <td>416397.382</td>\n",
              "      <td>437824.994</td>\n",
              "      <td>215315.362</td>\n",
              "      <td>26146.412</td>\n",
              "      <td>0.152722</td>\n",
              "      <td>25.6</td>\n",
              "      <td>4.2</td>\n",
              "      <td>841.114929</td>\n",
              "      <td>0.055787</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>935.0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>13101</th>\n",
              "      <td>22278.0</td>\n",
              "      <td>Michigan</td>\n",
              "      <td>US</td>\n",
              "      <td>43.3266</td>\n",
              "      <td>-84.5361</td>\n",
              "      <td>2020-03-12</td>\n",
              "      <td>2.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>1.098612</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>...</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>50</td>\n",
              "      <td>3</td>\n",
              "      <td>1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>11600.908252</td>\n",
              "      <td>9147420.0</td>\n",
              "      <td>166238.618</td>\n",
              "      <td>162826.299</td>\n",
              "      <td>329064.917</td>\n",
              "      <td>82289.916</td>\n",
              "      <td>90159.134</td>\n",
              "      <td>82846.126</td>\n",
              "      <td>60854.332</td>\n",
              "      <td>12915.409</td>\n",
              "      <td>0.035974</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.822277</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>3.0</td>\n",
              "      <td>0.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>13102</th>\n",
              "      <td>14652.0</td>\n",
              "      <td></td>\n",
              "      <td>Mexico</td>\n",
              "      <td>23.6345</td>\n",
              "      <td>-102.5528</td>\n",
              "      <td>2020-03-12</td>\n",
              "      <td>12.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>1.609438</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>1.386294</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>...</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>50</td>\n",
              "      <td>3</td>\n",
              "      <td>13.0</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>-1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>12918.884442</td>\n",
              "      <td>1943950.0</td>\n",
              "      <td>65172.136</td>\n",
              "      <td>62403.393</td>\n",
              "      <td>127575.529</td>\n",
              "      <td>44602.341</td>\n",
              "      <td>40260.553</td>\n",
              "      <td>28740.667</td>\n",
              "      <td>11970.294</td>\n",
              "      <td>2001.674</td>\n",
              "      <td>0.065627</td>\n",
              "      <td>14.0</td>\n",
              "      <td>1.5</td>\n",
              "      <td>1035.585083</td>\n",
              "      <td>1.571987</td>\n",
              "      <td>0.000549</td>\n",
              "      <td>12.0</td>\n",
              "      <td>0.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>13103</th>\n",
              "      <td>3771.0</td>\n",
              "      <td>Nova Scotia</td>\n",
              "      <td>Canada</td>\n",
              "      <td>44.6820</td>\n",
              "      <td>-63.7443</td>\n",
              "      <td>2020-03-12</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>...</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>50</td>\n",
              "      <td>3</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>11616.360385</td>\n",
              "      <td>9093510.0</td>\n",
              "      <td>18847.500</td>\n",
              "      <td>18563.538</td>\n",
              "      <td>37411.038</td>\n",
              "      <td>7934.163</td>\n",
              "      <td>10315.291</td>\n",
              "      <td>10057.760</td>\n",
              "      <td>7475.046</td>\n",
              "      <td>1628.778</td>\n",
              "      <td>0.004114</td>\n",
              "      <td>14.3</td>\n",
              "      <td>2.7</td>\n",
              "      <td>4928.627930</td>\n",
              "      <td>0.055238</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>13104</th>\n",
              "      <td>6375.0</td>\n",
              "      <td>Ningxia</td>\n",
              "      <td>China</td>\n",
              "      <td>37.2692</td>\n",
              "      <td>106.1655</td>\n",
              "      <td>2020-03-12</td>\n",
              "      <td>75.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>1.386294</td>\n",
              "      <td>1.386294</td>\n",
              "      <td>1.945910</td>\n",
              "      <td>1.791759</td>\n",
              "      <td>1.609438</td>\n",
              "      <td>...</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>50</td>\n",
              "      <td>3</td>\n",
              "      <td>50.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>44.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>896.508865</td>\n",
              "      <td>9388210.0</td>\n",
              "      <td>698159.433</td>\n",
              "      <td>735624.259</td>\n",
              "      <td>1433783.692</td>\n",
              "      <td>338099.542</td>\n",
              "      <td>416397.382</td>\n",
              "      <td>437824.994</td>\n",
              "      <td>215315.362</td>\n",
              "      <td>26146.412</td>\n",
              "      <td>0.152722</td>\n",
              "      <td>25.6</td>\n",
              "      <td>4.2</td>\n",
              "      <td>841.114929</td>\n",
              "      <td>0.091470</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>75.0</td>\n",
              "      <td>0.0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>5 rows × 97 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "            Id Province/State  ... PredictedConfirmedCases  PredictedFatalities\n",
              "13100   6003.0        Jiangxi  ...                   935.0                  1.0\n",
              "13101  22278.0       Michigan  ...                     3.0                  0.0\n",
              "13102  14652.0                 ...                    12.0                  0.0\n",
              "13103   3771.0    Nova Scotia  ...                     0.0                  0.0\n",
              "13104   6375.0        Ningxia  ...                    75.0                  0.0\n",
              "\n",
              "[5 rows x 97 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 54
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "OGTU5I5AbuST",
        "colab_type": "text"
      },
      "source": [
        "Create predictions for test data.\n",
        "\n"
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Mz54gwV5K_qJ",
        "colab_type": "code",
        "outputId": "f673acbb-46bc-4557-ec43-155fab9ec23d",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 256
        }
      },
      "source": [
        "prev_day_df = eval_df.loc[eval_df['Date'] == last_eval_date] \n",
        "first_test_date = last_eval_date + pd.Timedelta(days=1)\n",
        "\n",
        "predict_for_dataset(test_df, test_features_df, prev_day_df, first_test_date, last_test_date, update_features_data=True)\n",
        "\n",
        "test_df.head()"
      ],
      "execution_count": 55,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/html": [
              "<div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Id</th>\n",
              "      <th>Province/State</th>\n",
              "      <th>Country/Region</th>\n",
              "      <th>Lat</th>\n",
              "      <th>Long</th>\n",
              "      <th>Date</th>\n",
              "      <th>ConfirmedCases</th>\n",
              "      <th>Fatalities</th>\n",
              "      <th>ForecastId</th>\n",
              "      <th>LogNewConfirmedCases</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_1</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_2</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_3</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_4</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_5</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_6</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_7</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_8</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_9</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_10</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_11</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_12</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_13</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_14</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_15</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_16</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_17</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_18</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_19</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_20</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_21</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_22</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_23</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_24</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_25</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_26</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_27</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_28</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_29</th>\n",
              "      <th>LogNewConfirmedCases_prev_day_30</th>\n",
              "      <th>...</th>\n",
              "      <th>LogNewFatalities_prev_day_17</th>\n",
              "      <th>LogNewFatalities_prev_day_18</th>\n",
              "      <th>LogNewFatalities_prev_day_19</th>\n",
              "      <th>LogNewFatalities_prev_day_20</th>\n",
              "      <th>LogNewFatalities_prev_day_21</th>\n",
              "      <th>LogNewFatalities_prev_day_22</th>\n",
              "      <th>LogNewFatalities_prev_day_23</th>\n",
              "      <th>LogNewFatalities_prev_day_24</th>\n",
              "      <th>LogNewFatalities_prev_day_25</th>\n",
              "      <th>LogNewFatalities_prev_day_26</th>\n",
              "      <th>LogNewFatalities_prev_day_27</th>\n",
              "      <th>LogNewFatalities_prev_day_28</th>\n",
              "      <th>LogNewFatalities_prev_day_29</th>\n",
              "      <th>LogNewFatalities_prev_day_30</th>\n",
              "      <th>Day</th>\n",
              "      <th>WeekDay</th>\n",
              "      <th>Days_since_ConfirmedCases=1</th>\n",
              "      <th>Days_since_Fatalities=1</th>\n",
              "      <th>Days_since_ConfirmedCases=10</th>\n",
              "      <th>Days_since_Fatalities=10</th>\n",
              "      <th>Days_since_ConfirmedCases=100</th>\n",
              "      <th>Days_since_Fatalities=100</th>\n",
              "      <th>Distance_to_origin</th>\n",
              "      <th>CountryArea</th>\n",
              "      <th>CountryPopFemale</th>\n",
              "      <th>CountryPopMale</th>\n",
              "      <th>CountryPopTotal</th>\n",
              "      <th>CountryPop_0-20</th>\n",
              "      <th>CountryPop_20-40</th>\n",
              "      <th>CountryPop_40-60</th>\n",
              "      <th>CountryPop_60-80</th>\n",
              "      <th>CountryPop_80+</th>\n",
              "      <th>CountryPopDensity</th>\n",
              "      <th>CountrySmokingRate</th>\n",
              "      <th>CountryHospitalBedsRate</th>\n",
              "      <th>CountryHealthExpenditurePerCapitaPPP</th>\n",
              "      <th>PredictedLogNewConfirmedCases</th>\n",
              "      <th>PredictedLogNewFatalities</th>\n",
              "      <th>PredictedConfirmedCases</th>\n",
              "      <th>PredictedFatalities</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>16506</th>\n",
              "      <td>NaN</td>\n",
              "      <td>Heilongjiang</td>\n",
              "      <td>China</td>\n",
              "      <td>47.8620</td>\n",
              "      <td>127.7615</td>\n",
              "      <td>2020-03-25</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>2465.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>...</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>63</td>\n",
              "      <td>2</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>2291.452100</td>\n",
              "      <td>9388210.0</td>\n",
              "      <td>698159.433</td>\n",
              "      <td>735624.259</td>\n",
              "      <td>1433783.692</td>\n",
              "      <td>338099.542</td>\n",
              "      <td>416397.382</td>\n",
              "      <td>437824.994</td>\n",
              "      <td>215315.362</td>\n",
              "      <td>26146.412</td>\n",
              "      <td>0.152722</td>\n",
              "      <td>25.6</td>\n",
              "      <td>4.2</td>\n",
              "      <td>841.114929</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.001674</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>16507</th>\n",
              "      <td>NaN</td>\n",
              "      <td>Kansas</td>\n",
              "      <td>US</td>\n",
              "      <td>38.5266</td>\n",
              "      <td>-96.7265</td>\n",
              "      <td>2020-03-25</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>10033.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>2.833213</td>\n",
              "      <td>3.044522</td>\n",
              "      <td>2.079442</td>\n",
              "      <td>2.639057</td>\n",
              "      <td>2.397895</td>\n",
              "      <td>2.833213</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>2.079442</td>\n",
              "      <td>1.386294</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>1.386294</td>\n",
              "      <td>1.609438</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>...</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>63</td>\n",
              "      <td>2</td>\n",
              "      <td>15.0</td>\n",
              "      <td>12.0</td>\n",
              "      <td>9.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>1.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>11746.264894</td>\n",
              "      <td>9147420.0</td>\n",
              "      <td>166238.618</td>\n",
              "      <td>162826.299</td>\n",
              "      <td>329064.917</td>\n",
              "      <td>82289.916</td>\n",
              "      <td>90159.134</td>\n",
              "      <td>82846.126</td>\n",
              "      <td>60854.332</td>\n",
              "      <td>12915.409</td>\n",
              "      <td>0.035974</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>2.945260</td>\n",
              "      <td>0.047031</td>\n",
              "      <td>97.0</td>\n",
              "      <td>1.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>16508</th>\n",
              "      <td>NaN</td>\n",
              "      <td>Hainan</td>\n",
              "      <td>China</td>\n",
              "      <td>19.1959</td>\n",
              "      <td>109.7453</td>\n",
              "      <td>2020-03-25</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>2379.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>...</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>63</td>\n",
              "      <td>2</td>\n",
              "      <td>63.0</td>\n",
              "      <td>58.0</td>\n",
              "      <td>60.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>48.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>1329.409236</td>\n",
              "      <td>9388210.0</td>\n",
              "      <td>698159.433</td>\n",
              "      <td>735624.259</td>\n",
              "      <td>1433783.692</td>\n",
              "      <td>338099.542</td>\n",
              "      <td>416397.382</td>\n",
              "      <td>437824.994</td>\n",
              "      <td>215315.362</td>\n",
              "      <td>26146.412</td>\n",
              "      <td>0.152722</td>\n",
              "      <td>25.6</td>\n",
              "      <td>4.2</td>\n",
              "      <td>841.114929</td>\n",
              "      <td>0.703197</td>\n",
              "      <td>0.019845</td>\n",
              "      <td>180.0</td>\n",
              "      <td>7.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>16509</th>\n",
              "      <td>NaN</td>\n",
              "      <td>Missouri</td>\n",
              "      <td>US</td>\n",
              "      <td>38.4561</td>\n",
              "      <td>-92.2884</td>\n",
              "      <td>2020-03-25</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>10420.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>4.262680</td>\n",
              "      <td>4.477337</td>\n",
              "      <td>3.295837</td>\n",
              "      <td>3.091042</td>\n",
              "      <td>3.135494</td>\n",
              "      <td>2.639057</td>\n",
              "      <td>2.079442</td>\n",
              "      <td>1.791759</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>1.098612</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>...</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>63</td>\n",
              "      <td>2</td>\n",
              "      <td>15.0</td>\n",
              "      <td>6.0</td>\n",
              "      <td>8.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>3.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>11908.808377</td>\n",
              "      <td>9147420.0</td>\n",
              "      <td>166238.618</td>\n",
              "      <td>162826.299</td>\n",
              "      <td>329064.917</td>\n",
              "      <td>82289.916</td>\n",
              "      <td>90159.134</td>\n",
              "      <td>82846.126</td>\n",
              "      <td>60854.332</td>\n",
              "      <td>12915.409</td>\n",
              "      <td>0.035974</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>4.069644</td>\n",
              "      <td>0.518520</td>\n",
              "      <td>201.0</td>\n",
              "      <td>2.0</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>16510</th>\n",
              "      <td>NaN</td>\n",
              "      <td>Hebei</td>\n",
              "      <td>China</td>\n",
              "      <td>39.5490</td>\n",
              "      <td>116.1306</td>\n",
              "      <td>2020-03-25</td>\n",
              "      <td>NaN</td>\n",
              "      <td>NaN</td>\n",
              "      <td>2422.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>1.791759</td>\n",
              "      <td>0.693147</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>...</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.000000</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>0.0</td>\n",
              "      <td>63</td>\n",
              "      <td>2</td>\n",
              "      <td>63.0</td>\n",
              "      <td>62.0</td>\n",
              "      <td>59.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>52.0</td>\n",
              "      <td>NaN</td>\n",
              "      <td>1013.670182</td>\n",
              "      <td>9388210.0</td>\n",
              "      <td>698159.433</td>\n",
              "      <td>735624.259</td>\n",
              "      <td>1433783.692</td>\n",
              "      <td>338099.542</td>\n",
              "      <td>416397.382</td>\n",
              "      <td>437824.994</td>\n",
              "      <td>215315.362</td>\n",
              "      <td>26146.412</td>\n",
              "      <td>0.152722</td>\n",
              "      <td>25.6</td>\n",
              "      <td>4.2</td>\n",
              "      <td>841.114929</td>\n",
              "      <td>0.801581</td>\n",
              "      <td>0.012528</td>\n",
              "      <td>330.0</td>\n",
              "      <td>6.0</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "<p>5 rows × 97 columns</p>\n",
              "</div>"
            ],
            "text/plain": [
              "       Id Province/State  ... PredictedConfirmedCases  PredictedFatalities\n",
              "16506 NaN   Heilongjiang  ...                     0.0                  0.0\n",
              "16507 NaN         Kansas  ...                    97.0                  1.0\n",
              "16508 NaN         Hainan  ...                   180.0                  7.0\n",
              "16509 NaN       Missouri  ...                   201.0                  2.0\n",
              "16510 NaN          Hebei  ...                   330.0                  6.0\n",
              "\n",
              "[5 rows x 97 columns]"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 55
        }
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "kGvuRuKs_Fyz",
        "colab_type": "text"
      },
      "source": [
        "## Plots with predictions <a name=\"plots_with_predictions\"></a>\n",
        "\n",
        "Let's plot some example graphs with predictions.\n",
        "Plots will use data from reconcatenated main_df."
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "XcXpdsQjTodz",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "main_df = pd.concat([train_df, eval_df, test_df])"
      ],
      "execution_count": 0,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "bWFfwZA1_7uI",
        "colab_type": "code",
        "outputId": "09beab14-9b28-43d9-c4ee-e3dae161579f",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 1000
        }
      },
      "source": [
        "%matplotlib inline\n",
        "import matplotlib.pyplot as plt\n",
        "import matplotlib\n",
        "\n",
        "\n",
        "def plot_graph(country_region, province_state, field, log_scale=True):\n",
        "    location_df = main_df.loc[\n",
        "        (main_df['Country/Region'] == country_region) & (main_df['Province/State'] == province_state)\n",
        "    ]\n",
        "\n",
        "    if province_state:\n",
        "        title = '%s for %s, %s' % (field, country_region, province_state)\n",
        "    else:\n",
        "        title = '%s for %s' % (field, country_region)\n",
        "    \n",
        "    plt.figure(figsize = (16, 10))\n",
        "    plt.suptitle(title, fontsize=14)\n",
        "    if log_scale:\n",
        "        plt.yscale('log')\n",
        "\n",
        "    for sub_field in [field, 'Predicted' + field]:\n",
        "        plt.plot(location_df['Date'], location_df[sub_field], label=sub_field)\n",
        "\n",
        "\n",
        "    # add vertical lines splitting train, test and eval parts of the graph\n",
        "    ax = plt.gca()\n",
        "\n",
        "    # the x coords of this transformation are data, and the\n",
        "    # y coord are axes\n",
        "    transform_for_text = matplotlib.transforms.blended_transform_factory(ax.transData, ax.transAxes)\n",
        "\n",
        "    plt.axvline(x=last_train_date, color='#000000')\n",
        "    plt.text(first_eval_date, 0.95, 'eval', transform = transform_for_text)\n",
        "    plt.axvline(x=last_eval_date, color='#000000')\n",
        "    plt.text(first_test_date, 0.95, 'test', transform = transform_for_text)\n",
        "\n",
        "\n",
        "    plt.legend()\n",
        "    plt.show()\n",
        "\n",
        "plot_graph('US', 'Kansas', 'ConfirmedCases')\n",
        "plot_graph('US', 'Kansas', 'Fatalities')\n",
        "plot_graph('China', 'Hubei', 'ConfirmedCases')\n",
        "plot_graph('China', 'Hubei', 'Fatalities')\n",
        "plot_graph('Germany', '', 'ConfirmedCases', log_scale=False)\n",
        "plot_graph('Germany', '', 'Fatalities', log_scale=False)"
      ],
      "execution_count": 57,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAA6UAAAKGCAYAAACybj1qAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nOzdd3xW9aHH8c8vyJIRQAFBRRBQ2QiIIEMcCCpUURzgrANXvaDtbbWO6q32lg4ntpaKlzqLA7W4RUQUHIAMERBQgoKIDI0EDGSc+8cJMSImYSQn4/N+vZ5X8pz1fJ/zBM03vzNCFEVIkiRJkpSElKQDSJIkSZIqL0upJEmSJCkxllJJkiRJUmIspZIkSZKkxFhKJUmSJEmJsZRKkiRJkhJjKZWkSiqEcEsIYU0IIQohXJj3fEHSuQoKISwIIdySdI7dFUJICSH8I4SwPm9/90s6kyRJZYWlVJLKkBBC4xDC3SGET0IIW0IIq0IIL4UQTtrDr9Me+B1wOdAEmAD8BTh6T75OSQghdA4hTAghfJm3j5aFEMaHEDokna0QJwE/BwYT7+8Ze3LjeUV36A6mjw8hPF/geYsQwiMhhJV5++6LEMILIYTDd/L10kIIv9pu2v+EEDaHEAbv+juRJFVGeyUdQJIUCyE0B6YDG4HrgXnEfzw8DrgfaLYHX65V3tdnoyiKCkzPKCRftSiKtu7BDDsthDAIeBqYDJwHLAP2AU4H/gicnFy6QrUCVkdRtFtlNIRQNYqirF1dF3gN+AQ4E1gFNAVOABrsRqYUYAwwHBgQRdFbu7otSVLl5EipJJUdf8v72i2KoieiKPo4iqJFURSNATpuWyiE0CyE8EwIYWPeY2II4YAC82/JO+z17LwR140hhGdDCPtumw88k7d4bgghKrhege2MDyE8H0L4TQhhJbAyhNA8b1Tu7BDCmyGE70IIc0IIHUMI7UMIM0IIm0IIb4cQWhR8cyGEwSGE2SGEzBDC8hDC7SGEagXmNwohPJe3zRUhhIu2W39v4P+AV6IoOjmKoteiKFoeRdGsKIquB87JW65KCGFc3mt8F0JYGkL4dV552ratDiGE10MI34YQMkII80IIxxSY3zZvBHFjCOGrEMLjIYT9irv+drnHA3cCzfL2XVre9OohhLvyDqHODCG8G0LoXWC9fnnLnxRCeD+EsBUYsKPXKKZ2QEvgqiiKZkRRtCKKoneiKLo1iqLXd2WDeZ/fY8AQ4OiChTSE8McQwsd5n0FaCOFPIYQaBeYX+nOat8xP7uc98TlLksoGR0olqQwIITQABgI3RlH0o9HKKIq+yVsuBXgO+A7Y9sv1GODZEMIRBUY9mwNnEZeFWsC/gduBy4gP010J/JP4UNLCHA2k52ULBabfClwDfAr8HXgc+Aq4Ie/rv4B7iA9XJYQwAHgUGAlMIx71vR+oDmw7DHQ8cBBwPLCZuMg1L/CaA4B9iUdEf2TbPiL+g+sq4tHAtUB3YCywHhiXt8xjxCPR3YFsoAOQmZe1SV7GcXnZqhLvu+dCCD2jKMotbP0dGAmsAC4CjgBy8qb/KS/jRXn78Vrg5RBC6yiKVhdYfzTwS+JR4Y0/8RrFsRbIBU4PIfw1iqLs3dgWxD9Xk4hHgXtHUfTJdvM3Eb+3VUBb4s97C3BTgWWa89M/p1D4ft6tz1mSVIZEUeTDhw8fPhJ+EP/SHAFDiliuP3GpaV5g2sHEZeP4vOe3EP/inVpgmRuAZQWeD43/F/CDbd8CLCjwfDzxL/vVC0xrnpfzsgLTBuVNO63AtAuBjALPpwE3bfd6pxIfLhyAQ/K20avA/IPy3ustec9/nbdM/V3Yv38EJhd4/i1wwU8s+z/A69tNq5/32t2LWv8ntvkrIK3A81rAVuD8AtOqEB9ae1ve8355r3l6MbYfAUN3MH088HyB51cRl8UM4E3g90C7XdifacQF8xugaTHXuXy7n8Hi/Jzu7H4u9ufsw4cPHz7KzsPDdyWpbAhFLwJAG+CLKIrStk2IouhT4Avi0ahtVkRRlF7g+RdAo13ItSCKoi07mD6/wPdr8r5+uN20WnmH3AJ0BW7IO4QyI4SQQTyKVQvYj/h95QLvb9tAFEUr8nJvU9x9RAjh8hDCrBDC2rzXuoYfnpN7B/BACGFKCOGGEMJhBeZ1Bfpul/XzvHkti7F+cbQkHoGdvm1CFEU5wDv88HMEmLWT2/5JURTdR7y/hwNvA6cAc0MI5+3C5l4FqgG/CyH86LMJIQzNO4z7y7x9eCc/Pi+6qJ/TQvfzbn7OkqQywlIqSWXDUuLRrja7sY2CFyza/mI4Ebv23/xNPzG94PajQqalFPh6K9C5wKMj0Jp4NHb79XZkSd7XQvdRCOEs4C7iUcIBea/1N+ICFb9IFN1CXP6eBY4C5hc4hzUFeGG7rJ3zsj5fjPV31/b74Kc+g4I2Aqk7mF6P+PDr7zceRRujKPpPFEU3AJ2AN4hHTHfWm8QXljoH+GfBYhpC6EF8KO4rxIdwHw7cSFzECyr057Sw/bwHPmdJUhlhKZWkMiCKog3Ev8D/IoRQe/v5IYR6ed8uApqG+Eq92+YdTHwV1YUln3SXfQAcFkXRsh08soHFxP9P6r5thRBCM+L3tc2rwDrguh29QIF91Bt4L4qiMVEUfRBF0TK+H+HMF0XR0iiK7omi6GTicxAvKZC1HfEo3vZZNxZj/eL4hPjw3V4F8lcBerJrn+PHxCO8+fK21ylv3g5FURQR7/sf/cwVRxRFbwAnEp8X+mCBiwz1AlZFUfT7KIpmRlG0lPhw7F15jZ/az7v7OUuSyghLqSSVHVcRH6I6K4RwRgjh0BDCYSGEK/j+cNnJed8/GkLoFkLoRnwBoQ+AKYmkLp7/AYaH+F6W7fPe19AQwp8Aoij6GHgZ+EcIoWcIoTPxCNh32zYQRdEm4kIxMMRXxu0f4qsBdwkh/J54P0A8otolhHBiCKF1COEmCtx/NYRQM4RwX97VbZuHEI4kLjjbyuB9xKOOE0IIR4YQDg4hHB9CGBtCqFOM9YuU917+DowO8dV12+Q9b8z3V2HeGXcAF4UQrgohHJK3/8YS3+plbN777hziqxsPDfHVhVuFEC4mvhjRMz+96SLfy1vEI5WnAePzyvASYP8Qwjl5++8KYNjObLcY+3l3P2dJUhlhKZWkMiLv3NAuxPeSHE1cPqcAPwNG5C0TEZ8HuJb4sMs3gC+BU/PmlUlRFL1CfKjnMcTnjb5PPOL5WYHFLgSWE7/nScTnnKZtt53niEcTNwOPEI8CPgkcSHwhJIB/AE/krT+T+OJMfy2wmRziCxeNz1v/GeJzOa/Ne40viEf6comL8kfERXVL3qPQ9XfCb4AJxLe5mUt8OPPA6IdX3i2WKIoeB36e95iVl3s/oE8URV/mLbaS+Cq/NwPv5r3mL4mvxnz1tm2F+FZAaTv5+jOIL8I1GHgYeBH4M/HhtfPz5t28k2+rqP28W5+zJKnsCGX4dxhJklTKQghvAoujKLqsyIUlSdoDLKWSJAmAEEIq8ahiuyiK1iedR5JUOVhKJUmSJEmJ8ZxSSZIkSVJiLKWSJEmSpMRYSiVJkiRJibGUSpIkSZISYymVJEmSJCXGUipJkiRJSoylVJIkSZKUGEupJEmSJCkxllJJkiRJUmIspZIkSZKkxFhKJUmSJEmJsZRKkiRJkhJjKZUkSZIkJcZSKkmSJElKjKVUkiRJkpQYS6kkSZIkKTGWUkmSJElSYiylkiRJkqTEWEolSZIkSYmxlEqSJEmSEmMplSRJkiQlxlIqSZIkSUqMpVSSJEmSlBhLqSRJkiQpMZZSSZIkSVJiLKWSJEmSpMRYSiVJkiRJibGUSpIkSZISYymVJEmSJCXGUipJkiRJSoylVJIkSZKUGEupJEmSJCkxllJJkiRJUmIspZIkSZKkxFhKJUmSJEmJsZRKkiRJkhJjKZUkSZIkJcZSKkmSJElKjKVUkiRJkpQYS6kkSZIkKTGWUkmSJElSYiylkiRJkqTEWEolSZIkSYmxlEqSJEmSEmMplSRJkiQlxlIqSZIkSUqMpVSSJEmSlBhLqSRJkiQpMZZSSZIkSVJiLKWSJEmSpMRYSiVJkiRJibGUSpIkSZISYymVJEmSJCXGUipJkiRJSoylVJIkSZKUGEupJEmSJCkxllJJkiRJUmL2SjoAwL777hs1b9486RiSJFUoH3/8MQCHHnpowkm0u/wsJZV3s2fPXhdFUcMdzSsTpbR58+bMmjUr6RiSJFUo/fr1A2Dq1KmJ5tDu87OUVN6FEFb81DwP35UkSZIkJcZSKkmSJElKjKVUkiRJkpSYRM8pDSEMBga3atXqR/OysrJYuXIlmZmZpR9M2k6NGjU44IADqFq1atJRJEmSpAol0VIaRdEkYFK3bt0u3X7eypUrqVOnDs2bNyeEkEA6KRZFEevXr2flypW0aNEi6TiSJElShVJmD9/NzMxkn332sZAqcSEE9tlnH0ftJUmSpBJQZkspYCFVmeHPoiRJklQyynQplSRJkiRVbJbSInz55ZecffbZtGzZkq5du3LSSSexZMmSnd7OW2+9Rbt27ejcuTOrVq1i6NChJZD2x2rXrp3//ZIlSzjppJNo3bo1Xbp04cwzz2TNmjWlkkOSJEmSdiTRCx2VdVEUMWTIEC644AL+/e9/AzBv3jzWrFnDIYccslPbevTRR7n++us599xzAXjqqad+tEx2djZ77VUyH0lmZiYnn3wyd9xxB4MHDwZg6tSprF27lsaNG5fIa0qSJElSURwpLcQbb7xB1apVufzyy/OnderUid69e/Pf//3ftG/fng4dOjBhwgQgLnn9+vVj6NChHHbYYZxzzjlEUcQDDzzAE088wU033cQ555xDWloa7du3B2D8+PH87Gc/49hjj+W4445j/PjxnHrqqfTv35/mzZszZswY7rjjDg4//HB69OjBhg0bAPjkk08YOHAgXbt2pU+fPixevBiA5cuX07NnTzp06MCNN96Yn/uxxx6jZ8+e+YUUoF+/frRv3560tDT69OlDly5d6NKlCzNmzABg9erV9O3bl86dO9O+fXveeustAF599VV69uxJly5dOOOMM8jIyADguuuuo23btnTs2JFf/epXJfWxSJIkSapAysVI6a2TPmLhF9/u0W22bVqX3w1uV+gyCxYsoGvXrj+aPnHiRObOncu8efNYt24dRxxxBH379gVgzpw5fPTRRzRt2pRevXoxffp0LrnkEt5++20GDRrE0KFDSUtL+8H2PvjgA+bPn0+DBg0YP348CxYsYM6cOWRmZtKqVStGjx7NnDlzuOaaa3jooYcYNWoUI0aM4P7776d169a89957XHnllUyZMoWRI0dyxRVXcP7553PfffcV+V4AGjVqxGuvvUaNGjVYunQpw4YNY9asWTz22GMMGDCAG264gZycHDZv3sy6deu47bbbmDx5MrVq1WL06NHccccdXHXVVTzzzDMsXryYEALffPPNTn4ikiRJkiqjREtpCGEwMLhVq1ZJxthpb7/9NsOGDaNKlSo0btyYo48+mpkzZ1K3bl26d+/OAQccAEDnzp1JS0ujd+/ehW6vf//+NGjQIP/5McccQ506dahTpw6pqan5o5sdOnRg/vz5ZGRkMGPGDM4444z8dbZs2QLA9OnTefrppwE477zz+M1vflPk+8nKyuIXv/gFc+fOpUqVKvnnzB5xxBFcdNFFZGVlceqpp9K5c2fefPNNFi5cSK9evQDYunUrPXv2JDU1lRo1anDxxRczaNAgBg0aVNzdKUmSJKkSS7SURlE0CZjUrVu3SwtbrqgRzZLSrl27HZ77WZjq1avnf1+lShWys7OLXKdWrVo/uY2UlJT85ykpKWRnZ5Obm0u9evWYO3fuDre3o9uXtGvXjjfffHOHy9955500btyYefPmkZubS40aNQDo27cv06ZN44UXXuDCCy/k2muvpX79+vTv35/HH3/8R9t5//33ef3113nqqacYM2YMU6ZMKfK9S5IkSarcPKe0EMceeyxbtmxh7Nix+dPmz59PvXr1mDBhAjk5Oaxdu5Zp06bRvXv3UstVt25dWrRowZNPPgnEF2SaN28eAL169cq/KNOjjz6av87w4cOZMWMGL7zwQv60adOmsWDBAtLT02nSpAkpKSk8/PDD5OTkALBixQoaN27MpZdeyiWXXMIHH3xAjx49mD59OsuWLQNg06ZNLFmyhIyMDNLT0znppJO488478/NIkiRJUmEspYUIIfDMM88wefJkWrZsSbt27bj++usZPnw4HTt2pFOnThx77LH86U9/Yr/99ivVbI8++ijjxo2jU6dOtGvXjueeew6Au+++m/vuu48OHTqwatWq/OVr1qzJ888/z7333kvr1q1p27Ytf/vb32jYsCFXXnkl//rXv+jUqROLFy/OH7mdOnUqnTp14vDDD2fChAmMHDmShg0bMn78eIYNG0bHjh3p2bMnixcvZuPGjQwaNIiOHTvSu3dv7rjjjlLdH5IkSZLKpxBFUdIZ6NatWzRr1qwfTFu0aBFt2rRJKJH0Y/5MSipv+vXrB8R/ZFT55mcpqbwLIcyOoqjbjuY5UipJkiRJSoylVJIk7RHNmzdn3bp1Sceo1L755hv+9re/7dK6d911F5s3b97DiSSpaJZSSZKkCsJSKqk8SvSWMJIkqWx45JFHuOeee9i6dStHHnkkHTt2JC0tjT//+c8AjB8/nlmzZjFmzBhOPfVUPv/8czIzMxk5ciQjRoxIOL22ue666/jkk0/o3Lkz/fv3p1GjRjzxxBNs2bKFIUOGcOutt7Jp0ybOPPNMVq5cSU5ODjfddBNr1qzhiy++4JhjjmHffffljTfeSPqtSKpEHCmVJKmSW7RoERMmTGD69OnMnTuXKlWqULt2bZ555pn8ZSZMmMDZZ58NwIMPPsjs2bOZNWsW99xzD+vXr08qurbzxz/+kZYtWzJ37lz69+/P0qVLef/995k7dy6zZ89m2rRpvPzyyzRt2pR58+axYMECBg4cyH/913/RtGlT3njjDQuppFKX6EhpCGEwMLhVq1ZJxpAkqVJ7/fXXmT17NkcccQQA3333HY0aNeLggw/m3XffpXXr1ixevJhevXoBcM899+QX1s8//5ylS5eyzz77JJZfO/bqq6/y6quvcvjhhwOQkZHB0qVL6dOnD7/85S/5zW9+w6BBg+jTp0/CSSUVS04WpK+Ebz778WPzOrjqfQgh6ZS7JNFSGkXRJGBSt27dLk0yx0+pUqUKHTp0IDs7mzZt2vCvf/2Lvffee5e2deGFFzJo0CCGDh3KJZdcwrXXXkvbtm13uOzUqVOpVq0aRx111E69RvPmzZk1axb77rsvX375JaNGjWLmzJnUq1ePxo0bc9ddd3HIIYfsdPa33nqLyy+/nKpVq/LCCy8wcuRInnrqqZ3ezs6qXbs2GRkZACxZsoRRo0axdOlS6tSpQ6tWrbj33ntp3LhxieeQpIouiiIuuOAC/vd///cH0x988EGeeOIJDjvsMIYMGUIIgalTpzJ58mTeeecd9t57b/r160dmZmZCyVWYKIq4/vrrueyyy34074MPPuDFF1/kxhtv5LjjjuPmm29OIKGkH/nua9iwHDZ8Cl8vz/t+eVw8N34BUe73y4YUqLs/1GsG+3eF7C1QtUZy2XeD55QWombNmsydOxeAc845h/vvv59rr702f352djZ77bXzu/CBBx4odP7UqVOpXbv2TpfSbaIoYsiQIVxwwQX8+9//BmDevHmsWbNml0rpo48+yvXXX8+5554LsMNCuqv7ojgyMzM5+eSTueOOOxg8eDAQ76O1a9daSiVpDzjuuOM45ZRTuOaaa2jUqBEbNmxg48aNDBkyhNtvv505c+YwevRoANLT06lfvz577703ixcv5t133004vQqqU6cOGzduBGDAgAHcdNNNnHPOOdSuXZtVq1ZRtWpVsrOzadCgAeeeey716tXL/71k27r77rtvkm9BqtiiCDavj0vnjh7fff3D5es0gfotoEWfuHwWfNTdH6pUTeZ97GGW0mLq06cP8+fPZ+rUqdx0003Ur1+fxYsXs2jRIq677jqmTp3Kli1buOqqq7jsssuIooirr76a1157jQMPPJBq1arlb6tfv3785S9/oVu3brz88sv89re/JScnh3333Zdx48Zx//33U6VKFR555BHuvfdeDjvsMC6//HI+++wzIL46Xq9evVi/fj3Dhg1j1apV9OzZkyiKAHjjjTeoWrUql19+ef5rdurUCYgL669//WteeuklQgjceOONnHXWWUydOpVbbrmFfffdlwULFtC1a1ceeeQRxo0bxxNPPMErr7zCSy+9xO23386gQYNYsGAB48ePZ+LEiWRkZJCTk8PPf/5znn32WTZt2sTSpUv51a9+xdatW3n44YepXr06L774Ig0aNOCTTz7hqquuYu3atey9997885//5LDDDmP58uUMHz6cjIwMTjnllPzsjz32GD179swvpNv2IUBaWhrnnXcemzZtAmDMmDEcddRRrF69mrPOOotvv/2W7Oxs/v73v9OnTx9effVVfve737FlyxZatmzJ//3f/1G7dm2uu+46/vOf/7DXXntxwgkn8Je//KVkfpAkqQxq27Ytt912GyeccAK5ublUrVqV++67j4MOOog2bdqwcOFCunfvDsDAgQO5//77adOmDYceeig9evRIOL0K2meffejVqxft27fnxBNPZPjw4fTs2ROIj0B65JFHWLZsGf/93/9NSkoKVatW5e9//zsAI0aMYODAgfnnlkraRbm5kPElfJ32/ajnhk/yvi6HLd9+v2xIgdQDoUELaDckLqANDo4f9ZtDtV07SrO8KR+l9KXr4MsP9+w29+sAJ/6xWItmZ2fz0ksvMXDgQCA+5GXBggW0aNGCsWPHkpqaysyZM9myZQu9evXihBNOYM6cOXz88ccsXLiQNWvW0LZtWy666KIfbHft2rVceumlTJs2jRYtWrBhwwYaNGjA5ZdfTu3atfnVr34FwPDhw7nmmmvo3bs3n332GQMGDGDRokXceuut9O7dm5tvvpkXXniBcePGAeSXyh2ZOHEic+fOZd68eaxbt44jjjiCvn37AjBnzhw++ugjmjZtSq9evZg+fTqXXHIJb7/9dv6hx2lpaT/Y3gcffMD8+fNp0KAB48ePZ8GCBcyZM4fMzExatWrF6NGjmTNnDtdccw0PPfQQo0aNYsSIEdx///20bt2a9957jyuvvJIpU6YwcuRIrrjiCs4//3zuu+++/Nco7P00atSI1157jRo1arB06VKGDRvGrFmzeOyxxxgwYAA33HADOTk5bN68mXXr1nHbbbcxefJkatWqxejRo7njjju46qqreOaZZ1i8eDEhBL755pti/VxIUkVy1llncdZZZ/1o+vPPP/+D59WrV+ell17a4Ta2/3+EkvHYY4/94PnIkSN/8Lxly5YMGDDgR+tdffXVXH311SWaTaowtmyMC+bXafHjmxV536+ID7XN2fL9sqFKPLK5T0s48MjvS2eDlvH0var9xItUHuWjlCbku+++o3PnzkA8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\n",
            "text/plain": [
              "<Figure size 1152x720 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": [],
            "needs_background": "light"
          }
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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ueWW3HTTTfnP//zP7LrrrjnppJPS09NTU3K2pqqq/NVf/VXe+973Pu++u+66K9ddd10+/OEP55RTTskll1xSQ0Ja3jNPJteen+w2Idlv2gs/HrZAKd2KMWPGZM6cOUmSc889N5dffnkuvPDCDfevXbs2I0YM/lv4hS98Yav333LLLRk7duygS+nGNs6+Nf0HIgyklPabOHFivvWtbyVJ5syZk9mzZ28opWeddVbOOuusbQsNQC1OOeWU/O7v/m4uuOCC7LvvvnnyySezcuXKnH322fnEJz6Ru+++O3/3d3+XJOnq6sqee+6ZXXfdNffdd19uv/32mtOzsd133z0rV65Mkpx22mn5yEc+knPPPTdjx47N4sWLM3LkyKxduzZ77bVX3va2t2WPPfbY8OeS/udOmDChzi+BVnLLpcmz3ckfX5e86Ii609DC7CkdoBNOOCEPPPBAbrnllpxwwgk566yzMmXKlKxbty4XXXRRZsyYkSOPPDKf//znkzT+dvL9739/Dj300LzmNa/Jb37zmw2vddJJJ2X27NlJkuuvvz5HH310Xv7yl+eUU07JwoULc/nll+cf//EfM3369Nx6661ZunRp3vjGN2bGjBmZMWNGfvKTnyRJli9fnlNPPTVHHHFE3v3ud6eqqi3mX7VqVU455ZQcffTRmTZtWr7zne8kee6BCBdddNEWH7exhQsXZurUqVmzZk0uueSSXHXVVZk+fXquuuqqXHnllXn/+9+fJFvM/eMf/zjTp0/P9OnTc9RRR234nycA9ZgyZUr+5m/+JqeeemqOPPLIvPa1r81jjz2WPffcM4cffngefvjhHHvssUmS008/fcMKoosvvjjHHXdczenZ2N57752ZM2dm6tSp+cEPfpC3vvWteeUrX5lp06blTW96U1auXJlf/epXOfbYYzN9+vR87GMfy4c//OEkyXnnnZfTTz89J598cs1fBS3hN/cld3wh+e0/VkjZbq0xKf3+xcnjvxra19xvWvK6Swf00LVr1+b73/9+Tj/99CSNJS9z587N5MmTc8UVV2T8+PG544478uyzz2bmzJk59dRTc/fdd+f+++/PvffemyeeeCJTpkzJO9/5zue87tKlS/Oe97wns2bNyuTJk/Pkk09mr732yp/8yZ9k7Nix+Yu/+IskyVvf+tZccMEFOf744/PII4/ktNNOy7x58/Kxj30sxx9/fC655JL8x3/8R/7lX/5lw2uvXr0606dPT5JMnjw53/zmN3PNNddk3LhxWbZsWY477ricddZZufTSSzN37twNU9W1a9du9nGllOd9X0aNGpWPf/zjG05jTBqnM/Y7//zzN5v7k5/8ZD772c9m5syZWbVqVUaPHj3AHxoAO8qb3/zmvPnNb37e57/3ve895+Nddtkl3//+9zf7GgsXLtwR0Rikr33ta8/5+Pzzz3/Oxy996Utz2mmnPe95H/jAB/KBD3xgh2ajjdz4P5NRY5OTP1R3EtpAa5TSmmxc7E444YS8613vyk9/+tMce+yxmTx5cpLGIQK//OUvNyxn7erqyoIFCzJr1qy85S1vyfDhwzNx4sS8+tWvft7r33777TnxxBM3vNZee+212Rw33XRT7r333g0fd3d3Z9WqVZk1a1auvvrqJMkZZ5yRPffcc8NjNl2+29vbmw996EOZNWtWhg0blsWLF+eJJ5543ntVVbXZx+23336D+t5tLffMmTNz4YUX5txzz80555yTAw44YNCvDQBATebfmDxwU3La/27sJ4Xt1BqldIATzaG2pX2Zu+2224Z/r6oqn/70p5/3N47XXXfdkOVYv359br/99u2aKH71q1/N0qVLc+edd2bkyJGZNGnSZg+mGOjjtif3xRdfnDPOOCPXXXddZs6cmRtuuCGHHXbYNr0HAAA70bre5IYPJXsfnMx4T91paBP2lG6n0047Lf/8z/+c3t7eJMn8+fPz9NNP58QTT8xVV12VdevW5bHHHtvsNb+OO+64zJo1Kw899FCS5Mknn0zy3EMKkuTUU0/Npz/96Q0f9xflE088ccMSne9///t56qmntpizq6sr++67b0aOHJmbb745Dz/88Gbfa0uP25JNn7+xLeV+8MEHM23atHzwgx/MjBkzct999231PQAAaBJ3fCFZviA59RPJiFF1p6FNKKXb6d3vfnemTJmSo48+OlOnTs173/verF27NmeffXYOOeSQTJkyJX/4h3+YV77ylc977j777JMrrrgi55xzTl7+8pdv2Mtz5pln5pprrtlw0NFll12W2bNn58gjj8yUKVNy+eWXJ0k++tGPZtasWTniiCNy9dVX58ADD9xiznPPPTezZ8/OtGnT8qUvfWnDZHLjAxEuuuiiLT5uS04++eTce++9Gw462tiWcn/qU5/K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\n",
            "text/plain": [
              "<Figure size 1152x720 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": [],
            "needs_background": "light"
          }
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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gGsIpQAAAAAA1xBKAQAAAACuIZQCAAAAAFxDKAUAAAAAuIZQCgAAAABwDaEUAAAAAOAaQikAAAAAwDWEUgAAAACAawilAAAAAADXEEoBAAAAAK4hlAIAAAAAXEMoBQAAAAC4hlAKAAAAAHANoRQAAAAA4BpCKQAAAADANYRSAAAAAIBrCKUAAAAAANcQSgEAAAAAriGUAgAAAABcQygFAAAAALiGUAoAAAAAcA2hFAAAAADgGkIpAAAAAMA1hFIAAAAAgGsIpQAAAAAA1xBKAQAAAACuIZQCAAAAAFxDKAUAAAAAuIZQCgAAAABwDaEUAAAAAOAaQikAAAAAwDWEUgAAAACAawilAAAAAADXEEoBAAAAAK4hlAIAAAAAXEMoBQAAAAC4hlAKAAAAAHANoRQAAAAA4BpCKQAAAADANYRSAAAAAIBrCKUAAAAAANcQSgEAAAAAriGUAgAAAABcQygFAAAAALiGUAoAAAAAcA2hFAAAAADgGkIpAAAAAMA1hFIAAAAAgGtC3C5AkuLj421CQoLbZQAAUKNs2bJFknT++ee7XAnOFt8lgOpu1apVB621DUpaViVCaUJCglauXOl2GQAA1CiDBw+WJC1evNjVOnD2+C4BVHfGmB9PtozLdwEAAAAAriGUAgAAAABcQygFAAAAALimStxTWpK8vDwlJSUpOzvb7VIAhYeHq1mzZvL5fG6XAgAAANQoroZSY8woSaNat259wrKkpCRFR0crISFBxpjKLw4IsNYqJSVFSUlJatGihdvlAAAAADWKq5fvWms/stZOiImJOWFZdna26tevTyCF64wxql+/Pq32AAAAQAWo0veUEkhRVXAuAgAAABWjSodSAAAAAEDNRig9hb179+q6665Tq1at1LNnT40YMUJbt2497f189dVX6tixo7p166bk5GRdddVVFVDtiaKioopeb926VSNGjFCbNm3Uo0cPXXPNNdq3b1+l1AEAAAAAJamyve9WBdZajR49WjfccIPeeustSdK6deu0b98+tW3b9rT2NWfOHD3wwAMaP368JOmdd945YZ38/HyFhFTMV5Kdna3LL79c06ZN06hRoyRJixcv1oEDB9SoUaMKeU8AAAAAOBVaSkuxaNEi+Xw+TZw4sWhe165dNWDAAN17773q1KmTOnfurHnz5klyQt7gwYN11VVXqV27dho3bpystXr55Zf19ttv65FHHtG4ceO0a9cuderUSZI0e/Zs/fKXv9SQIUN0ySWXaPbs2bryyis1dOhQJSQkaMaMGZo2bZq6d++uvn376tChQ5KkH374QcOHD1fPnj01cOBAbd68WZK0c+dO9evXT507d9bDDz9cVPfcuXPVr1+/okAqSYMHD1anTp20a9cuDRw4UD169FCPHj20bNkySdKePXs0aNAgdevWTZ06ddJXX30lSfr000/Vr18/9ejRQ1dffbXS09MlSffff786dOigLl266J577qmorwUAAABADVItWkof+2iDNv58tFz32aFJXf1pVMdS11m/fr169ux5wvz33ntPa9eu1bp163Tw4EH17t1bgwYNkiStWbNGGzZsUJMmTdS/f38tXbpUt956q77++muNHDlSV111lXbt2nXc/lavXq3ExETFxcVp9uzZWr9+vdasWaPs7Gy1bt1aU6dO1Zo1a3TXXXfp9ddf15QpUzRhwgTNnDlTbdq00YoVKzRp0iR98cUXuvPOO3X77bfrN7/5jV544YVTfhZJatiwoT777DOFh4dr27ZtGjNmjFauXKm5c+dq2LBheuihh1RQUKDMzEwdPHhQjz/+uBYuXKjIyEhNnTpV06ZN0+TJk/X+++9r8+bNMsboyJEjp/mNAAAAAKiNqkUorWq+/vprjRkzRl6vV40aNdJFF12k7777TnXr1lWfPn3UrFkzSVK3bt20a9cuDRgwoNT9DR06VHFxcUXTF198saKjoxUdHa2YmJii1s3OnTsrMTFR6enpWrZsma6++uqibXJyciRJS5cu1bvvvitJuv7663Xfffed8vPk5eXpjjvu0Nq1a+X1eovume3du7duvvlm5eXl6corr1S3bt305ZdfauPGjerfv78kKTc3V/369VNMTIzCw8N1yy23aOTIkRo5cmRZDycAAACAWqxahNJTtWhWlI4dO5Z472dpwsLCil57vV7l5+efcpvIyMiT7sPj8RRNezwe5efny+/3KzY2VmvXri1xfyU9vqRjx4768ssvS1z/mWeeUaNGjbRu3Tr5/X6Fh4dLkgYNGqQlS5Zo/vz5uvHGG3X33XerXr16Gjp0qN58880T9vPtt9/q888/1zvvvKMZM2boiy++OOVnBwAAAFC7cU9pKYYMGaKcnBzNmjWraF5iYqJiY2M1b948FRQU6MCBA1qyZIn69OlTaXXVrVtXLVq00L/+9S9JTodM69atkyT179+/qFOmOXPmFG0zduxYLVu2TPPnzy+at2TJEq1fv16pqak655xz5PF49M9//lMFBQWSpB9//FGNGjXSbbfdpltvvVWrV69W3759tXTpUm3fvl2SlJGRoa1btyo9PV2pqakaMWKEnnnmmaJ6AAAAAKA0roZSY8woY8ys1NRUN8s4KWOM3n//fS1cuFCtWrVSx44d9cADD2js2LHq0qWLunbtqiFDhugvf/mLGjduXKm1zZkzR6+88oq6du2qjh076sMPP5QkPffcc3rhhRfUuXNnJScnF61fp04dffzxx5o+fbratGmjDh066MUXX1SDBg00adIkvfbaa+ratas2b95c1HK7ePFide3aVd27d9e8efN05513qkGDBpo9e7bGjBmjLl26qF+/ftq8ebPS0tI0cuRIdenSRQMGDNC0adMq9XgAAAAAqJ6MtdbtGtSrVy+7cuXK4+Zt2rRJ7du3d6ki4ESckwCqm8GDB0ty/pMR1RvfJYDqzhizylrbq6RlXL4LAAAAAHANoRQAAJSLhIQEHTx40O0yarUjR47oxRdfPKNtn332WWVmZpZzRQBwaoRSAACAGoJQCqA6qhaPhAEAABXrjTfe0PPPP6/c3FxdcMEF6tKli3bt2qWnnnpKkjR79mytXLlSM2bM0JVXXqndu3crOztbd955pyZMmOBy9Sh0//3364cfflC3bt00dOhQNWzYUG+//bZycnI0evRoPfbYY8rIyNA111yjpKQkFRQU6JFHHtG+ffv0888/6+KLL1Z8fLwWLVrk9kcBUIvQUgoAQC23adMmzZs3T0uXLtXatWvl9XoVFRWl999/v2idefPm6brrrpMkvfrqq1q1apVWrlyp559/XikpKW6VjmL+/Oc/q1WrVlq7dq2GDh2qbdu26dtvv9XatWu1atUqLVmyRP/5z3/UpEkTrVu3TuvXr9fw4cP1+9//Xk2aNNGiRYsIpAAqHS2lAADUcp9//rlWrVql3r17S5KysrLUsGFDtWzZUsuXL1ebNm20efNm9e/fX5L0/PPPFwXW3bt3a9u2bapfv75r9aNkn376qT799FN1795dkpSenq5t27Zp4MCB+p//+R/dd999GjlypAYOHOhypQBUkCflpBUbjgaN06Xc9MA47cTp3EzpjpWSp3q2ORJKS+H1etW5c2fl5+erffv2eu211xQREXFG+7rxxhs1cuRIXXXVVbr11lt19913q0OHDiWuu3jxYoWGhurCCy88rfdISEjQypUrFR8fr71792rKlCn67rvvFBsbq0aNGunZZ59V27ZtT7v2r776ShMnTpTP59P8+fN155136p133jnt/ZyuqKgopaenS5K2bt2qKVOmaNu2bYqOjlbr1q01ffp0NWrUqMLrAICazlqrG264QU8++eRx81999VW9/fbbateunUaPHi1jjBYvXqyFCxfqm2++UUREhAYPHqzs7GyXKkdprLV64IEH9Nvf/vaEZatXr9Ynn3yihx9+WJdccon++Mc/ulAhUENYK+VmSNlHpKzDxw/ZR4+Fy+DXRePA/Pyssr1XaJQzhEVJoZFSaLRUt6kzz58veUIr9rNWEEJpKerUqaO1a9dKksaNG6eZM2fq7rvvLlqen5+vkJDTP4Qvv/xyqcsXL16sqKio0w6lhay1Gj16tG644Qa99dZbkqR169Zp3759ZxRK58yZowceeEDjx4+XpBID6Zkei7LIzs7W5ZdfrmnTpmnUqFGSnGN04MABQikAlINLLrlEV1xxhe666y41bNhQhw4dUlpamkaPHq0nnnhCa9as0dSpUyVJqampqlevniIiIrR582YtX77c5eoRLDo6WmlpaZKkYcOG6ZFHHtG4ceMUFRWl5ORk+Xw+5efnKy4uTuPHj1dsbGzR75LCbePj4938CIB7CsNl1qFjoTLz0IlBs6R5/ryT79d4pLBoKazusXFEvBTX0gmT4XUDywqXRx9bL7zusRDqi6y2LaGnQigto4EDByoxMVGLFy/WI488onr16mnz5s3atGmT7r//fi1evFg5OTmaPHmyfvvb38paq9/97nf67LPPdO655yo09Nj/WgwePFhPP/20evXqpf/85z968MEHVVBQoPj4eL3yyiuaOXOmvF6v3njjDU2fPl3t2rXTxIkT9dNPP0lyesfr37+/UlJSNGbMGCUnJ6tfv36y1kqSFi1aJJ/Pp4kTJxa9Z9euXSU5gfUPf/iDFixYIGOMHn74YV177bVavHixHn30UcXHx2v9+vXq2bOn3njjDb3yyit6++239d///lcLFizQE088oZEjR2r9+vWaPXu23nvvPaWnp6ugoEA33XSTPvjgA2VkZGjbtm265557lJubq3/+858KCwvTJ598ori4OP3www+aPHmyDhw4oIiICP39739Xu3bttHPnTo0dO1bp6em64oorimqfO3eu+vXrVxRIC4+hJO3atUvXX3+9MjIyJEkzZszQhRdeqD179ujaa6/V0aNHlZ+fr5deekkDBw7Up59+qj/96U/KyclRq1at9I9//ENRUVG6//779e9//1shISG69NJL9fTTT1fMiQQAVVCHDh30+OOP69JLL5Xf75fP59MLL7yg8847T+3bt9fGjRvVp08fSdLw4cM1c+ZMtW/fXueff7769u3rcvUIVr9+ffXv31+dOnXSZZddprFjx6pfv36SnCuQ3njjDW3fvl333nuvPB6PfD6fXnrpJUnShAkTNHz48KJ7S4Fqze+XclKljBQpM0XKPOiMMwLjrCMlh8/SwqUvUqpTzxki6kkNzpci4o7NKxzCYwOvY53XoZGSMZX32auh6hFKF9wv7f2+fPfZuLN02Z/LtGp+fr4WLFig4cOHS3IueVm/fr1atGihWbNmKSYmRt99951ycnLUv39/XXrppVqzZo22bNmijRs3at++ferQoYNuvvnm4/Z74MAB3XbbbVqyZIlatGihQ4cOKS4uThMnTlRUVJTuueceSdLYsWN11113acCAAfrpp580bNgwbdq0SY899pgGDBigP/7xj5o/f75eeeUVSSoKlSV57733tHbtWq1bt04HDx5U7969NWjQIEnSmjVrtGHDBjVp0kT9+/fX0qVLdeutt+rrr78uuvR4165dx+1v9erVSkxMVFxcnGbPnq3169drzZo1ys7OVuvWrTV16lStWbNGd911l15//XVNmTJFEyZM0MyZM9WmTRutWLFCkyZN0hdffKE777xTt99+u37zm9/ohRdeKHqP0j5Pw4YN9dlnnyk8PFzbtm3TmDFjtHLlSs2dO1fDhg3TQw89pIKCAmVmZurgwYN6/PHHtXDhQkVGRmrq1KmaNm2aJk+erPfff1+bN2+WMUZHjhwp03kBADXJtddeq2uvvfaE+R9//PFx02FhYVqwYEGJ+yj+bwTcMXfu3OOm77zzzuOmW7VqpWHDhp2w3e9+9zv97ne/q9DagNOWl+UEyOwjx8bZqSfOCx5nBoKoLSh5nyF1jg+T8W0DQbN4wIw7Nj88VvKFV+5nr0WqRyh1SVZWlrp16ybJaSm95ZZbtGzZMvXp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\n",
            "text/plain": [
              "<Figure size 1152x720 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": [],
            "needs_background": "light"
          }
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "<Figure size 1152x720 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": [],
            "needs_background": "light"
          }
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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33478+bNY9SoUYwfP56ioiIA3n33XWbOnMmpp57K5MmTWbNmDQAbNmxgwoQJDB8+nB/84AdVdT/wwANMmDChKsACTJ06lWHDhpGXl8fkyZMZPXo0o0ePZsmSJQBs27aNKVOmkJOTw7Bhw3jppZcA+POf/8yECRMYPXo055xzDsXFxQBcd911DBkyhBEjRvC9732vsb6WjGBPrCRJktSK3fj/3uDN9z5s0GMO6XsUPzpr6Cdus3r1ak499dSPtT/22GOsWLGClStXUlBQwNixY5kyZQoAy5cv54033qBv375MnDiRxYsXc9lll/Hyyy8ze/Zs5s6dS15e3keOl5uby6pVq+jZsyfz589n9erVLF++nLKyMj71qU9x8803s3z5cr797W/zm9/8hm9961tcfvnl3HXXXQwePJhXXnmFK664gueff56rr76ab3zjG1x44YXccccdNZ4LwDHHHMMzzzxDhw4dWLt2Leeddx7Lli3jgQceYMaMGXz/+9+noqKC0tJSCgoKuOmmm3j22Wfp3LkzN998M/PmzePKK6/k8ccfZ82aNYQQ2LlzZx2/kZbFECtJkiSp2Xj55Zc577zzyM7Opk+fPnzuc5/jtdde46ijjmLcuHH069cPgJycHPLy8pg0adInHm/69On07Nmz6vVpp51G165d6dq1K926davqPR0+fDirVq2iuLiYJUuWcM4551Tts3fvXgAWL17Mo48+CsBXv/pVrr322hrPZ//+/Vx11VWsWLGC7OzsqjG/Y8eO5ZJLLmH//v2cffbZ5OTk8OKLL/Lmm28yceJEAPbt28eECRPo1q0bHTp04NJLL2X27NnMnj27tpezRTLESpIkSa1YTT2mjWXo0KGHHLv6Sdq3b1/1PDs7m/Ly8hr36dy582GPkZWVVfU6KyuL8vJyDhw4QPfu3VmxYsUhj3eo5WCGDh3Kiy++eMjtb7nlFvr06cPKlSs5cOAAHTp0AGDKlCksWrSIp556iosvvpjvfOc79OjRg+nTp/Pggw9+7Divvvoqzz33HI888gi33347zz//fI3n3lI5JlaSJElSk5s2bRp79+7l7rvvrmpbtWoV3bt3Z8GCBVRUVJCfn8+iRYsYN25ck9V11FFHMXDgQH73u98BqQmoVq5cCcDEiROrJqG6//77q/Y5//zzWbJkCU899VRV26JFi1i9ejW7du3i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EyYwevRozjnnnKp/FLvuuusYMmQII0aM4Hvf+94R/7w4JlaSJNXLV77yFb7yla98rP3JJ5/8yOv27dvz9NNPH/IYeXl5jVFaq1ayt5x95QfoUIueWEj9Alvd1Vdf/ZHXgwYNYsaMGR/b75vf/Cbf/OY361+omo+nr4P3/9Kwxzx2OHzhp7XatLy8nKeffpqZM2cCkJuby+rVqxk4cCB333033bp147XXXmPv3r1MnDiRM844g+XLl/P222/z5ptvsn37doYMGcIll1zykePm5+fzta99jUWLFjFw4ECKioro2bMnX//61+nSpUtVmDr//PP59re/zaRJk9i0aRMzZszgrbfe4sYbb2TSpEn8y7/8C0899RT33HMPAKtXr+bUU0895Lk89thjrFixgpUrV1JQUMDYsWOZMmUKAMuXL+eNN96gb9++TJw4kcWLF3PZZZfx8ssvM3v2bObOnfux/ybm5uayatUqevbsyfz581m9ejXLly+nrKyMT33qU9x8880sX76cb3/72/zmN7/hW9/6Fpdffjl33XUXgwcP5pVXXuGKK67g+eef5+qrr+Yb3/gGF154IXfccUfVZ3zS+RxzzDE888wzdOjQgbVr13LeeeexbNkyHnjgAWbMmMH3v/99KioqKC0tpaCggJtuuolnn32Wzp07c/PNNzNv3jyuvPJKHn/8cdasWUMIgZ07d9bq5+KTGGIlSZJakA0FJQC1up1YSqc9e/aQk5MDpHpiL730UpYsWcK4ceMYOHAgkOrZW7VqVdUttrt27WLt2rUsWrSI8847j+zsbPr27cu0adM+dvylS5cyZcqUqmP17NnzkHU8++yzHxlD++GHH1JcXMyiRYt47LHHADjzzDPp0aNHjef08ssvV9XVp08fPve5z/Haa69x1FFHMW7cOPr16wdATk4OeXl5TJo06ROPN3369I/Ufdppp9G1a1e6du1Kt27dqnpPhw8fzqpVqyguLmbJkiWcc845Vfvs3bsXgMWLF/Poo48C8NWvfpVrr722xvPZv38/V111VdUs9JXjfseOHcsll1zC/v37Ofvss8nJyeHFF1/kzTffrJrQb9++fUyYMIFu3brRoUMHLr30UmbPns3s2bNr/NyaGGIlSZJakPVJiK1tT6xU2x7ThlY5JvZgnTt3rnoeY+S222772N0Af/jDHxqsjgMHDrB06VI6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\n",
            "text/plain": [
              "<Figure size 1152x720 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": [],
            "needs_background": "light"
          }
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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t0VbmwGtLk888QSFhYVMmDCBnJwcWrZsWeL9QMs6rizWr1/P+PHjN5s57d+/P8cddxwjRowgPz+fV155hQMPPLBcnyFJkiRJSSnXasD6vmXLlrHbbruRk5PDmDFjmD17NgA77rjj964ZLW1caTZ9f3G9evXinnvu2fh8w0zvzJkzyc3N5frrr6dTp05MmzatoocnSZIkSdXOsloJzjnnHAoKCsjNzeWxxx7bOJPZpEkT8vPzadu2Lf369St1XGl69OjBlClTNi6wVNygQYMoKCigXbt2tGnThgcffBCAu+++m7Zt29KuXTtycnI45phjquagJUmSJKkKhdSZu5mpY8eOsaCg4Hvbpk6dSuvWrRNKpKT5/UtSxXXv3h2AsWPHJppDFed3KSnbhRAmxBg7lvSaM6uSJEmSpIxjWZUkSVWuZcuWLF68OOkYtdbXX3/N/fffX6733n333Xz77beVnEiSts6yKkmSVMNZViVlo63eukaSJNVujz/+OIMGDWLNmjUceuihtGvXjlmzZnHHHXcAMGTIEAoKCrj33ns56aSTmDt3LqtWreLKK6/k4osvTji9IHVru5kzZ5KXl8fRRx/NbrvtxlNPPcXq1as5+eSTufXWW/nmm284/fTTmTdvHkVFRdx0000sXLiQBQsW0KNHD5o2bcqYMWOSPhRJtYgzq5IkqVRTp05l6NChvPXWW0yaNIm6devSqFEjhg0btnHM0KFDOfPMMwEYPHgwEyZMoKCggEGDBrFkyZKkoquYgQMHsu+++zJp0iSOPvpopk+fzrvvvsukSZOYMGEC48aN4+WXX6Z58+Z88MEHTJ48mT59+nDFFVfQvHlzxowZY1GVslHRuqQTVIhlVZIklerVV19lwoQJdOrUiby8PF599VU+//xz9tlnH8aPH8+SJUuYNm0a+fn5QOrWagcffDBdunRh7ty5TJ8+PeEj0KZGjhzJyJEjad++PR06dGDatGlMnz6d3NxcRo0axfXXX88bb7zBzjvvnHRUSRWxahnc2xE+fCrpJOVmWS2HunXrkpeXR9u2bfnJT35Soes4zj//fJ555hkALrroIqZMmVLq2LFjx/L2229v82cUX9RiQ/YNP7NmzSrxPdtybUujRo0AWLBgAaeddhoAkyZNYsSIERvHDB8+nIEDB25zdklSsmKMnHfeeUyaNIlJkybxySefcMstt3DmmWfy1FNP8c9//pOTTz6ZEAJjx45l9OjRvPPOO3zwwQe0b9+eVatWJX0I2kSMkRtuuGHjdzpjxgwuvPBC9t9/fyZOnEhubi6//e1vue2225KOKqkixv4RvpoFTfdLOkm5WVbLYfvtt2fSpElMnjyZ+vXr8+CDD37v9XXryjfd/sgjj9CmTZtSXy9vWS1uQ/YNPy1btixxXHkWYmjevPnG4r1pWe3bty/9+/cvd25JUjJ69uzJM888w6JFiwBYunQps2fP5uSTT+a5557jySef3HgK8LJly2jcuDE77LAD06ZNY/z48UlGVzE77rgjK1asAKB3794MHjyYlStXAjB//nwWLVrEggUL2GGHHTj33HPp168fEydO3Oy9krLEomnw7kNwyHnQvH3SacrNslpBRxxxBDNmzGDs2LEcccQR9O3blzZt2lBUVES/fv3o1KkT7dq146GHHgJS/5p52WWXccABB3DUUUdt/B9/SN3Yu6CgAICXX36ZDh06cPDBB9OzZ09mzZrFgw8+yF133UVeXh5vvPEGhYWFnHrqqXTq1IlOnTrx1ltvAbBkyRJ69erFQQcdxEUXXUSMsdT8K1eupGfPnnTo0IHc3Fyee+454PsLMfTr16/UccXNmjWLtm3bsmbNGm6++WaGDh1KXl4eQ4cOZciQIVx22WUApeZ+/fXXN874tm/f3v9hlKQM0KZNG37/+9/Tq1cv2rVrx9FHH80XX3xB48aNad26NbNnz6Zz584A9OnTh3Xr1tG6dWv69+9Ply5dEk6vDZo0aUJ+fj5t27Zl1KhRnH322Rx22GHk5uZy2mmnsWLFCj766CM6d+5MXl4et956K7/97W8BuPjii+nTpw89evRI+CgklUmM8NJ1UL8RHHlz0mkqJLtXA36pP3z5UeXuc49cOKZsp6uuW7eOl156iT59+gAwceJEJk+eTKtWrXj44YfZeeedee+991i9ejX5+fn06tWL999/n08++YQpU6awcOFC2rRpwwUXXPC9/RYWFvKLX/yCcePG0apVK5YuXcquu+7Kr371Kxo1asS1114LwNlnn83VV19N165dmTNnDr1792bq1KnceuutdO3alZtvvpkXX3yRRx99dOO+v/vuO/Ly8gBo1aoVTz/9NMOGDWOnnXZi8eLFdOnShb59+zJw4EAmT57MpEmTNh5rSeNCCJv9XurX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\n",
            "text/plain": [
              "<Figure size 1152x720 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": [],
            "needs_background": "light"
          }
        }
      ]
    }
  ]
}